Click here to Skip to main content
16,020,243 members
Home / Discussions / .NET (Core and Framework)
   

.NET (Core and Framework)

 
PinnedHOW TO ANSWER A QUESTION Pin
Chris Maunder16-Jul-09 3:09
cofounderChris Maunder16-Jul-09 3:09 
PinnedHow to get an answer to your question Pin
Chris Maunder16-Jul-09 3:05
cofounderChris Maunder16-Jul-09 3:05 
Question.net core vs .net framework Pin
yolanda smith9-Oct-24 20:25
yolanda smith9-Oct-24 20:25 
AnswerRe: .net core vs .net framework Pin
Frangkyb10-Oct-24 21:38
Frangkyb10-Oct-24 21:38 
When comparing .NET Core and .NET Framework, it is essential to consider various factors such as performance, cross-platform support, deployment options, and future-proofing. Here’s a detailed comparison between the two to help you decide which is best for your needs:

1. Performance
.NET Core:

Generally faster and more efficient than .NET Framework. Microsoft has made significant performance improvements in .NET Core, especially in areas like server-side web applications and microservices.
Kestrel, the web server in .NET Core, is highly optimized for performance, especially in handling asynchronous operations and modern hardware architectures.
Garbage Collection (GC) and JIT (Just-In-Time) compilation have been improved in .NET Core to reduce latency and improve throughput.
Supports tiered compilation, which optimizes hot paths of code over time for better performance.
.NET Framework:

Performance is generally good for most traditional desktop and enterprise applications. However, it lacks many of the modern performance optimizations found in .NET Core.
The web server in .NET Framework, IIS, is more mature but not as optimized for high-performance scenarios, especially compared to Kestrel in .NET Core.
Verdict: .NET Core offers better performance, especially for web applications, cloud-based services, and applications that require scalability.

2. Cross-Platform Support
.NET Core:
Cross-platform, meaning it can run on Windows, Linux, and macOS.
If you are building applications that need to be deployed across multiple operating systems, .NET Core is the clear choice.
.NET Framework:
Only runs on Windows. It is tightly integrated with the Windows operating system and is not portable across other platforms.
Verdict: If you need cross-platform support, .NET Core is the way to go.

3. Application Types
.NET Core:

Ideal for building web applications (ASP.NET Core), microservices, cloud-native apps, console apps, cross-platform libraries, and high-performance APIs.
It supports modern development practices like Docker containers, Kubernetes, and serverless architectures.
Does not fully support desktop applications like Windows Forms or WPF (though .NET Core 3.1 and .NET 5+ added partial support).
.NET Framework:

Best suited for Windows-specific applications, especially legacy desktop applications built with WPF or Windows Forms.
If you are working with older enterprise applications that require compatibility with Windows-only technologies like COM, WCF, or Windows Services, .NET Framework may still be a better choice.
Verdict: For modern, cloud-native apps, .NET Core is better. For Windows desktop applications or legacy support, .NET Framework may be preferred.

4. Deployment and Hosting
.NET Core:

Offers self-contained deployments, meaning you can bundle the runtime with your application. This allows it to run on machines without needing .NET Core pre-installed.
Supports side-by-side versioning, allowing multiple versions of .NET Core to run on the same machine without conflicts.
Supports hosting in modern environments like Docker containers, Linux servers, and Azure cloud services.
.NET Framework:

Relies on the .NET Framework runtime being installed on the machine. This can cause version conflicts or dependency issues.
Primarily hosted on Windows servers and IIS, which is less flexible for modern cloud and container-based deployments.
Verdict: .NET Core offers more flexible and modern deployment options, especially for cloud and containerized environments.

5. Ecosystem and Libraries
.NET Core:
Provides access to most of the same libraries as .NET Framework, but with better support for open-source and modern libraries.
The .NET ecosystem has been shifting toward .NET Core with better support for new features and libraries.
.NET Framework:
Has a larger and more mature ecosystem for Windows-based libraries and tools. However, support for newer technologies and libraries is becoming limited as the focus shifts to .NET Core.
Verdict: While both ecosystems are strong, .NET Core is the future, with most new development efforts focused there.

6. Long-Term Support and Future
.NET Core:
.NET Core has evolved into .NET 5+ (now referred to simply as ".NET"), which is the future of the .NET platform. .NET 6 is the LTS (Long-Term Support) version.
Microsoft is actively developing and improving .NET Core/.NET 5+, making it the strategic choice for future-proofing your application.
.NET Framework:
.NET Framework 4.8 is the last major version of .NET Framework. Microsoft will continue to provide support and bug fixes but will no longer add new features or performance improvements.
Verdict: For long-term projects, .NET Core/.NET 5+ is the recommended choice as .NET Framework is now in maintenance mode.

7. Development and Tooling
.NET Core:

Works well with modern development tools like Visual Studio Code and Visual Studio on Windows, macOS, and Linux.
Supports modern build and CI/CD pipelines with Azure DevOps, GitHub Actions, and other CI/CD tools.
.NET Framework:

Primarily tied to Visual Studio on Windows. It does not have the same cross-platform tooling capabilities as .NET Core.
Verdict: .NET Core provides more modern and flexible tooling options.

Conclusion:
Choose .NET Core (or .NET 5+):

For better performance, cross-platform support, cloud-native apps, microservices, containerization, and future-proofing.
When you need flexible deployment and modern development practices.
Choose .NET Framework:

For legacy Windows desktop applications, or if your application depends on Windows-specific technologies that are not fully supported in .NET Core (like WCF or Windows Services).
For most new projects, .NET Core (or .NET 5+) is the recommended choice due to its performance benefits, modern development practices, and long-term support.
Questionwhatsapp otp Pin
Palak Khambhaita5-Oct-24 1:35
Palak Khambhaita5-Oct-24 1:35 
AnswerRe: whatsapp otp Pin
Andre Oosthuizen5-Oct-24 3:10
mveAndre Oosthuizen5-Oct-24 3:10 
AnswerRe: whatsapp otp Pin
Frangkyb10-Oct-24 4:35
Frangkyb10-Oct-24 4:35 
QuestionRemote debugging on Raspberry Pi in Visual Studio Code. Pin
Jerry Walter 202422-Apr-24 15:02
Jerry Walter 202422-Apr-24 15:02 
AnswerRe: Remote debugging on Raspberry Pi in Visual Studio Code. Pin
jschell23-Apr-24 14:13
jschell23-Apr-24 14:13 
Questionhi please help me with a filter on view Pin
Chrayet Mahdi9-Mar-24 6:13
Chrayet Mahdi9-Mar-24 6:13 
AnswerRe: hi please help me with a filter on view Pin
jschell12-Mar-24 14:46
jschell12-Mar-24 14:46 
AnswerRe: hi please help me with a filter on view Pin
Andre Oosthuizen14-Mar-24 6:36
mveAndre Oosthuizen14-Mar-24 6:36 
QuestionAdvice on a product to convert PDF to TIFF or JPEG. Pin
PhilMcGahan2-Mar-24 3:00
PhilMcGahan2-Mar-24 3:00 
AnswerRe: Advice on a product to convert PDF to TIFF or JPEG. Pin
jschell6-Mar-24 12:12
jschell6-Mar-24 12:12 
AnswerRe: Advice on a product to convert PDF to TIFF or JPEG. Pin
TNCaver14-Mar-24 7:01
TNCaver14-Mar-24 7:01 
QuestionC#, WPF project Pin
Member 1621198528-Feb-24 2:50
Member 1621198528-Feb-24 2:50 
AnswerRe: C#, WPF project Pin
Richard Deeming28-Feb-24 3:22
mveRichard Deeming28-Feb-24 3:22 
AnswerRe: C#, WPF project Pin
Gerry Schmitz28-Feb-24 7:04
mveGerry Schmitz28-Feb-24 7:04 
AnswerRe: C#, WPF project Pin
jschell28-Feb-24 12:22
jschell28-Feb-24 12:22 
RantForm Cancel Property paired up with Button DialogResult Property is Diabolical! Pin
Brian L Hughes27-Feb-24 17:04
Brian L Hughes27-Feb-24 17:04 
QuestionGantt chart for management app c# Windows Forms Pin
Ionut Ciocan20-Feb-24 12:17
Ionut Ciocan20-Feb-24 12:17 
AnswerRe: Gantt chart for management app c# Windows Forms Pin
jeron120-Feb-24 12:33
jeron120-Feb-24 12:33 
AnswerRe: Gantt chart for management app c# Windows Forms Pin
pkfox28-Sep-24 22:07
professionalpkfox28-Sep-24 22:07 
QuestionVisual Studio 2022 and Angular Language Service Pin
Z.C.M.8-Feb-24 11:19
professionalZ.C.M.8-Feb-24 11:19 
AnswerRe: Visual Studio 2022 and Angular Language Service Pin
Gerry Schmitz9-Feb-24 9:58
mveGerry Schmitz9-Feb-24 9:58 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.