Microsoft has announced the release of .NET 5.0, which is the first release of the platform that combines .NET with .NET Framework. .NET 5.0 is a major release, and is also the fifth release since becoming an open-source project.
“Last year, we shared a vision of a unified .NET stack and ecosystem. The value to you is that you will be able to use a single set of APIs, languages, and tools to target a broad set of application types, including mobile, cloud, desktop, and IoT. You might realize that you can already target a broad set of platforms with .NET today, however, the tools and APIs are not always the same across Web and Mobile, for example, or released at the same time,” Richard Lander, program manager for .NET at Microsoft, wrote in a post.
For the .NET 5.0 and 6.0 releases, the team will be working on unifying the .NET experience. It had hoped to entirely deliver the unification vision with .NET 5.0, but the pandemic has forced it to adapt to the changing needs of customers. “We’ve been working with teams from companies from around the world that have needed help to speed up their adoption of cloud technologies. They, too, have had adapt to the changing needs of their customers. As a result, we are delivering the vision across two releases,” Lander wrote.
The first step in unifying .NET was consolidating repos, and according to Microsoft, in this release Blazor is a good example of something that is taking advantage of repo consolidation. The runtime and libraries for Blazor WebAssembly are now built from the consolidated repo, which means that, for example, Blazor WebAssembly and Blazor on the server use the same code for List<T>, which wasn’t the case prior to .NET 5.0.
In addition, the Windows team is currently working on Project Reunion, which is a vision for unifying and evolving the Windows developer platform to make it easier to build apps that work across Windows 10 versions and devices.
Key highlights of .NET 5.0 release include performance improvements across several components, new C# 9 and F# 5 language improvements, improved performance for .NET libraries, reduced P95 latency, and an expanded platform scope with Arm64 and WebAssembly.
It also includes improved application deployment options, such as ClickOne client app publishing, single-file apps, reduced container image size, and the addition of Server Core container images.
“.NET 5.0 is another big release that should improve many aspects of your use with .NET. We have enabled a broad set of improvements, ranging from single file applications, to performance, to Json serialization usability to Arm64 enablement. While today may be your first day with .NET 5.0, we’ve been running .NET 5.0 in production at Microsoft for months. We have confidence that it is ready for you to use, to run your business and power your apps. The new language improvements in C# 9 and F# 5 should make your code more expressive and easier to write. .NET 5.0 is also a great choice for your existing apps. In many cases, you can upgrade without much effort,” Lander wrote.
Microsoft is also currently hosting .NET Conf and will be going into more detail on what can be done using .NET 5.0.