.NET6 Released: Top features in the new .NET Version
Great news for .NET developers and technology enthusiasts!
“Welcome to .NET 6,” Lander said. “It is another huge .NET release, with near-equal servings of performance, functionality, usability, and security improvements. We hope you find many improvements that end up making you more efficient and capable in your everyday development and increase performance or reduce the costs of your apps in production. We’ve already started hearing good things from those among you who have already started to use .NET 6.”
With the new version of .NET after the .NET 5 release, the version was officially launched as the first of two release candidate publications of .NET 6 and it will be supported for three years. Developers already have started upgrading applications to it, Microsoft said.
.NET 6 Highlights:
- C# 10 offers language improvements such as record structs, implicit using, and new lambda capabilities, while the compiler adds incremental source generators. F# 6 adds new features including Task based async, pipeline debugging and numerous performance improvements.
- Visual Basic has improvements in the Visual Studio experience and for Windows Forms project open experience.
- Hot Reload enables you to skip rebuilding and restarting your app to view a new change — while your app is running — supported in Visual Studio 2022 and from the .NET CLI, for C# and Visual Basic.
- Cloud diagnostics have been improved with OpenTelemetry and dotnet monitor, which is now supported in production and available with Azure App Service.
- JSON APIs are more capable and have higher performance with a source generator for the serializer.
- Minimal APIs introduced in ASP.NET Core to simplify the getting started experience and improve the performance of HTTP services.
- Blazor components can now be rendered from JavaScript and integrated with existing JavaScript based apps.
- WebAssembly AOT compilation for Blazor WebAssembly (Wasm) apps, as well as support for runtime relinking and native dependencies.
- Single-page apps built with ASP.NET Core now use a more flexible pattern that can be used with Angular, React, and other popular frontend JavaScript frameworks.
- HTTP/3 has been added so that ASP.NET Core, HttpClient, and gRPC can all interact with HTTP/3 clients and servers.
- File IO now has support for symbolic links and has greatly improved performance with a re-written-from-scratch FileStream.
- Security has been improved with support for OpenSSL 3, the ChaCha20Poly1305 encryption scheme, and runtime defense-in-depth mitigations, specifically W^X and CET.
- Single-file apps (extraction-free) can be published for Linux, macOS, and Windows (previously only Linux).
- IL trimming is now more capable and effective, with new warnings and analyzers to ensure correct final results.
- Source generators and analyzers have been added that help you produce better, safer, and higher performance code.
- Production stress-tested with Microsoft services, cloud apps run by other companies, and open source projects.
- Supported for three years as the latest long term support (LTS) release.
- Unified platform across browser, cloud, desktop, IoT, and mobile apps, all using the same .NET Libraries and the ability to share code easily.
- Performance is greatly improved across the board and for file I/O in particular, which together result in decreased execution time, latency, and memory use.
- Source build enables organizations like Red Hat to build .NET from source and offer their own builds to their users.
Sourced from Microsoft
NET 6 is also supported with Visual Studio 2022, Visual Studio 2022 for Mac, but not Visual Studio 2019, Visual Studio for Mac 8 or MSBuild 16. Mac users should use the latest Visual Studio 2022 for Mac preview.
This version is set to deliver improvements for cloud, desktop, and mobile apps. It will integrate capabilities for Android, iOS, and macOS that currently reside in the Xamarin open-source mobile .NET platform.
See the ASP.NET Core post for what’s new for web scenarios. .NET 6 is ready for your app.