The Road to .NET 7

Learn about the evolution of .NET, the transition from .NET Core to .NET 7.

This lesson is about the functionality in the Base Class Library (BCL) APIs provided by .NET and how to reuse functionality across all the different .NET platforms using .NET Standard. First, we will review the route to this point and why it is important to understand the past.

Overview

.NET Core 2.0 and later: Its support for a minimum of .NET Standard 2.0 is important because it provides many APIs missing from the first version of .NET Core. The 15 years’ worth of libraries and applications that .NET Framework developers had available to them that are relevant for modern development have now been migrated to .NET and can run cross-platform on macOS and Linux variants, as well as on Windows.

.NET Standard 2.1: It added about 3,000 new APIs. Some of those APIs need runtime changes that would break backward compatibility, so .NET Framework 4.8 only implements .NET Standard 2.0. .NET Core3.0, Xamarin, Mono, and Unity implement .NET Standard 2.1.

.NET 5: It removed the need for .NET Standard if all our projects could use .NET 5. The same applies to .NET 6 and .NET 7. Since we might still need to create class libraries for legacy .NET Framework projects or legacy Xamarin mobile apps, we still need to create .NET Standard 2.0 and 2.1 class libraries.

Note: Now that .NET 6 and .NET 7 fully support mobile and desktop apps built using .NET MAUI, the need for .NET Standard has been further reduced.

Comparison of major .NET Core and modern .NET

To summarize the progress that .NET has made over the past five years, the comparison of major.NET Core and modern .NET versions with the equivalent .NET Framework versions in the following list:

  • .NET Core 1.x: Much smaller API compared to .NET Framework 4.6.1, which was the current version in March 2016.

  • .NET Core 2.x: Reached API parity with .NET Framework 4.7.1 for modern APIs because they both implement .NET Standard 2.0.

  • .NET Core 3.x: Larger API compared to .NET Framework for modern APIs because .NET Framework 4.8 does not implement .NET Standard 2.1.

  • .NET 5: Even larger API compared to .NET Framework 4.8 for modern APIs, with much-improved performance.

  • .NET 6: Continued improvements to performance and expanded APIs. Optional support for mobile apps in .NET MAUI was added in May 2022.

  • .NET 7: Final unification with the support for mobile apps in .NET MAUI.

Get hands-on with 1400+ tech skills courses.