What are the differences between .NET, .NET Core, .NET Framework, and .NET Standard?

What are the differences between .NET, .NET Core, .NET Framework, and .NET Standard?

You may have come across different terms while learning about .NET, such as .NET Core, .NET Framework, and .NET Standard. These different terms can be confusing when you are new to the .NET ecosystem. In this post, I’ll cover the differences between .NET, .NET Core, .NET Framework, and .NET Standard.

.NET Framework

.NET Framework is the original version of .NET that was released in 2002. It is a Windows-only framework that can be used to develop desktop (console and GUI) applications, web applications, and services. .NET Framework comes pre-installed on Windows machines. .NET Framework 4.8 is supported as a component of Windows, so will continue to receive support for that time.

.NET Core

.NET Core is a cross-platform, open-source version of .NET that was released in 2016. It can be used to develop desktop applications, web applications, and mobile apps, across multiple operating systems such as Windows, Linux, and macOS. When it was first released it only supported cross-platform console and web applications, however it can now also support GUI desktop applications through the use of frameworks such as .NET MAUI.

.NET Standard

.NET Standard is a set of APIs that specify how .NET platforms should behave and indicates the functionality a specific .NET platform implements. By targeting .NET Standard, developers can write code that can be shared across multiple .NET platforms, which reduces the need to write platform-specific code.

.NET Core is Now .NET

In 2020, Microsoft announced that .NET Core would be renamed to simply .NET. This change was made to unify the .NET platform and make it easier to understand for developers. .NET Core and .NET are now essentially the same platform, with the only difference being the name. This means that all the features and functionalities of .NET Core are still available in .NET 5+.

Summary

The differences between .NET, .NET Core, .NET Framework, and .NET Standard can be confusing for developers who are new to the .NET ecosystem. While each version of .NET has its own strengths and weaknesses, the recent name change of .NET Core to .NET has unified the platform and made it easier to understand. As a developer, you can choose the version of .NET that best suits your needs.

Microsoft have produced guidance on when to use .NET or .NET Framework for server applications.