What’s new in Microsoft's .NET 6 release

Sam Medley - 01/12/2021
Microsoft continues its innovation in the .Net development platform with the release of .Net 6.

The unification journey it began with its 2020 release of .Net 5.0 continues, now including the SDK, base libraries and runtime for mobile, desktop, IoT and web applications within the Core platform.

.Net 5.0 was released last November and, along with performance and other improvements, took a major step in unifying development, by bringing Windows desktop technologies such as WPF and Windows Forms onto the Core platform.

And, while .Net 5.0 support was 'Current Release', through till May 2022, .Net 6.0 is a Long Term Support release, being supported for the next three years until November 2024.

The last twelve months between releases has been huge for the .Net team. Thanks to their open-source development model via the .Net Foundation, their GitHub repos show the scale of effort with over 6,500 pull requests merged into the development branch through that time.

While we have to wait a little longer for the next instalment in cross-platform application development, in the form of MAUI (Multi-platform App UI), the release of .Net 6 features many exciting improvements including version 10 of the C# programming language, Hot-Reload functionality across Visual Studio and the dotnet command line, and including more uses of Source Generators (generating code at build time in order to reduce the need for reflection), the most notable improvements are to performance. These performance improvements are bound to lead to noticeable impacts for those keeping an eye on system performance metrics and those watching the monthly bill for their business's cloud services.

One major upgrade is implementing Dynamic Profile-guided Optimization in the Just-in-Time compiler, allowing for the performance of code to be inspected at run-time, and, depending on the patterns discovered, take additional steps to optimize code further to improve a function's performance.

This reduces guess-work of applying optimisations at build time when an application’s behaviour is unknown, and instead applies them at runtime when the real behaviour of the application can be determined in production.

Microsoft has migrated some of their cloud services to .Net 6 already and are showing some impressive performance results, for example, the gateway service for Azure Active Directory was migrated from IIS & .Net 5 to Http.sys & .Net 6, showing a 33% reduction in CPU utilisation and a 50% improvement in application efficiency.

Some micro-benchmarks comparing commonly called methods between .Net versions are showing that optimisations are leading to increases in speed over 20% from the previous .Net Core version and over 50% from .Net Framework 4.8, the previous version of the .Net Framework. Added to speed improvements, some optimisations are leading to reduced application size too as more aggressive inlining of function code, allows for yet more optimisations.

Depending on your business's production work-load, these improvements could be enough to tip your hosting tiers down, or reduce the number of instances required, reducing your monthly hosting bills.

To learn more about how .Net 6 can benefit your organisation, Contact Us to discuss.  
 

We're ready
to help.

Give us a call, send us an email or fill out a contact us form to speak to your friendly, local Kiandrian.