In this post, we would introduce .NET 5, what’s the deal behind it, how the releases are planned, new features, etc.
There’s always been speculation about Microsoft stack with various frameworks, releases, versions, APIs, etc.
Currently we have:
- The full-fledged battle-tested .NET Framework
- Relatively newer, but immensely robust .NET Core
- Xamarin Mono/Xamarin
These 3 will be combined in a single framework, starting to be called .NET 5.
There will be just one .NET moving forward, and we will be able to use it to target Windows, macOS, Linux, iOS, Android, etc.
New .NET APIs, runtime capabilities, and language features will be shipped as part of the package.
However, Microsoft says all this would be a hell of an effort, hence they will have incremental changes.
It means that .NET 5 will have few changes, .NET 6 will bring in a few changes and so on.
Let’s not expect every single feature in .NET 5.
Schedules and Releases
.NET 5 is scheduled to be released in November 2020, with .NET 6 the next year, and so on.
Even numbered releases will be LTS (Long Term Support) versions.
Microsoft said that, after .NET Core 3.1 (released in November 2019), the next thing would be .NET 5.
They have skipped version 4 to not cause confusion with the current .NET 4.x framework.
5.0 milestone is 100% complete as per the below Github url: https://github.com/dotnet/corefx/milestone/44
.NET 5 will have everything that we love about .NET Core. In addition, it will have:
- More choice on runtime experiences, toggle between Mono and CoreCLR.
- Java interoperability will be available on all platforms.
- Objective-C and Swift interoperability will be supported on multiple operating systems.
- CoreFX will be extended to support static compilation of .NET (ahead-of-time – AOT), smaller footprints, and support for more operating systems.
We see a bright future ahead in which you can use the same .NET APIs and languages to target a broad range of application types, operating systems, and chip architectures. It will be easy to make changes to your build configuration to build your applications differently, in Visual Studio, Visual Studio for Mac, Visual Studio Code, Azure DevOps or at the command line.
Microsoft has invested and continuing to invest in the idea of one .NET, trying to bridge all the components into one single framework.
IMO it would be great for a developer to get onto the wagon with a single framework, provided there are valid documentation and support, which Microsoft has been improving upon.