Microsoft has published a first preview of .NET 5. The merger of .NET Standard and .NET Core, .NET 5 is intended to unify the .NET platform. Microsoft describes .NET 5 as “the future of .NET.”
High-level goals for .NET 5 include providing a unified .NET SDK experience, with a single BCL (base class library) across all .NET 5 applications, and support for both native and web applications across multiple operating systems.
For native development, a single device project would support an application to work across devices such as Windows, Microsoft Duo (Android), and Apple iOS using native controls on those platforms.
High-performance cloud applications is a goal as well, as are faster algorithms in the BCL, better support for containers in the runtime, and support for HTTP3. Preview 1 offers regular expression performance improvements as well as code quality enhancements in the RyuJIT compiler.
Due as a production release in November 2020, .NET 5 is set to include:
- ASP.NET Core, an open source framework for web applications.
- Entity Framework Core data access technology.
- WPF (Windows Presentation Foundation).
- Xamarin mobile app device model.
Microsoft is offering a preview .NET 5 SDK and an accompanying runtime preview. Microsoft said that .NET 5 will provide a single, unified platform for building any type of application. The company added that the .NET Framework will remain supported for as long as Windows itself is supported.
Microsoft recommends that developers build new applications with .NET Core 3.1 and then migrate them to .NET 5. The company said that .NET Framework applications can be left on .NET Framework.
The initial .NET 5 preview supports the Windows ARM64 architecture for the first time. Preview 1 includes the .NET Core runtime. Preview 2 is expected to include the SDK with ASP.NET Core but not WPF or Windows Forms, which will be included in a subsequent preview. Plans also call for back-porting Windows ARM64 to .NET Core 3.1.