Lately, there have been a number of exciting changes in the .NET world that are likely to have a greater impact on Microsoft’s development ecosystem for upcoming years. Microsoft is making cross-platform software development, from any platform, as easy and modular as something similar to Node.js. And it started with .NET Core, a rewrite of .NET Framework.
While the tried and tested .NET Framework isn’t going away too soon, the new announcement created confusion with the name and two distinct flavors of .NET family. The .NET Framework is a classic version and .NET Core is the new one. In this blog today, we will cover the key differences between .NET Framework and .NET Core following a brief run down on .NET technology and both of its versions.
Understanding .NET as a whole:
Microsoft .NET is a general purpose development platform. It is used for developing any kind of application type or workload where general purpose solutions are utilized. It includes several key features that are leveraged by developers who provide extensive Microsoft application development services. It combines high performance with a unique, differentiated developer productivity. Moreover, Open Source is also an essential part of the .NET ecosystem which includes multiple .NET implementations along with numerous libraries available under OSI-approved licenses.
The Traditional .NET Framework:
.NET Framework is Microsoft’s primarily developed platform for Windows server and client developers. It's a powerful and mature framework with a vast class library that supports a huge variety of solutions and applications on Windows. It offers the highest level of compatibility for your firm’s existing applications and libraries. It is shipped as a part of the Windows operating system and therefore, serviced via optional standalone installers or Windows Updates when the new versions are released. .NET Framework can be installed with a standalone setup downloaded from Visual Studio or from here.
The Modern .NET Core:
.NET Core is the latest version of .NET. It is a modern, modular and an open-source .NET version for building modern microservices, web applications, libraries and console applications that can run on Windows, Mac OS, and Linux. Unlike .NET Framework, which is a system-wide, single package installation, and Windows-only runtime environment, the modern .NET Core is all about decoupling .NET from Windows and enabling it to run in non-Windows environments without requiring a giant 400mb set of binaries installation. It has the ability to deploy applications that come with the framework itself which supports side-by-side execution of different framework versions.
Difference between .NET Framework & .NET Core:
Understanding .NET as a whole:
Microsoft .NET is a general purpose development platform. It is used for developing any kind of application type or workload where general purpose solutions are utilized. It includes several key features that are leveraged by developers who provide extensive Microsoft application development services. It combines high performance with a unique, differentiated developer productivity. Moreover, Open Source is also an essential part of the .NET ecosystem which includes multiple .NET implementations along with numerous libraries available under OSI-approved licenses.
The Traditional .NET Framework:
.NET Framework is Microsoft’s primarily developed platform for Windows server and client developers. It's a powerful and mature framework with a vast class library that supports a huge variety of solutions and applications on Windows. It offers the highest level of compatibility for your firm’s existing applications and libraries. It is shipped as a part of the Windows operating system and therefore, serviced via optional standalone installers or Windows Updates when the new versions are released. .NET Framework can be installed with a standalone setup downloaded from Visual Studio or from here.
The Modern .NET Core:
.NET Core is the latest version of .NET. It is a modern, modular and an open-source .NET version for building modern microservices, web applications, libraries and console applications that can run on Windows, Mac OS, and Linux. Unlike .NET Framework, which is a system-wide, single package installation, and Windows-only runtime environment, the modern .NET Core is all about decoupling .NET from Windows and enabling it to run in non-Windows environments without requiring a giant 400mb set of binaries installation. It has the ability to deploy applications that come with the framework itself which supports side-by-side execution of different framework versions.
Difference between .NET Framework & .NET Core:
.NET Framework | .NET Core |
---|---|
It is not an open-source platform | It is an open-source platform |
It only runs on Windows operating system | It is cross-platform and thus, runs on Windows, Mac and Linux operating systems |
It can be used for working with ASP.NET or developing a Windows application | It can be used for developing applications that run on any platform including ASP.NET Core for cross-platform web applications |
It is distributed with Windows | It is distributed with an app |
Nevertheless, you must note that .NET Core is compatible with .NET Framework as it is a subset of it. Let us know if you’ve found the differences between .NET Framework and .Net Core useful using the comment box below.