Microsoft drops .NET 10 RC 'go-live' with 55,000 words on why it's faster

Benchmark bonanza shows big wins across JSON, compression, JIT, and more

The first release candidate of .NET 10 is out, complete with a "go-live" license, meaning that Microsoft supports production use. The company has also detailed performance improvements in this long-term support release, translating to real-world savings for users.

There are no feature changes in the SDK and languages (C#, F#, and Visual Basic) since the previous beta, but there are some tweaks to ASP.NET Core and the Blazor framework, and enhancements to Entity Framework Core including SQL Server vector search and improved support for complex types. Microsoft has a full list of what is new since .NET 9.

A significant experimental option has appeared in the cross-platform framework MAUI (multi-platform app UI), which is to use the CoreCLR runtime in place of Mono on Android. This is "not intended for production use," the release notes state, and results in an undesirable increase in application size. Mono was the earliest cross-platform and open source implementation of .NET, eventually acquired by Microsoft along with Xamarin, but unifying the core runtime across all platforms would now be an advantage. Native AOT (ahead-of-time) compilation is in development too. Mono is also used on iOS and macOS in MAUI, though Native AOT is the default for release builds.

Microsoft partner software engineer Stephen Toub posts each year on performance improvements in .NET, with the latest 55,000-word piece detailing optimizations in version 10 and benchmark results using the popular BenchmarkDotNet library. This is a good read not only for the results, but for better understanding of .NET internals. Some of the items show a dramatic difference; improvements to the way thread pool queues work mean that specially crafted code that times out after 20 seconds on .NET 9 now completes in 4 ms.

Another example is in the System.IO.Compression API. Toub tells us that since .NET 9 the native zlib library was changed to a modernized fork of the original, called zlib-ng. Improvements in this library, and a fixed regression, mean that some compression, decompression, and update operations are faster by 65 percent or more.

Developers will also find significant improvements in JSON serialization and deserialization, collection operations, JIT (just-in-time) compilation, cryptography, and many more.

This performance work means developers get more efficient applications without changing their code. Technical fellow Ian Griffiths at Endjin, whose application AIS.NET parses location and identity data from commercial ships, posts each year about the impact of this, showing gains in message throughput, which for .NET 9 were 9 percent and in previous releases have been up to 27 percent.

The AIS.NET application shows noticeable performance gains with each new version of .NET

The AIS.NET application shows noticeable performance gains with each new version of .NET

Another .NET user reported that "in my company running maybe 20K servers on .NET, we get a 10-20 percent CPU decrease every time we upgrade to the next major."

Results like these suggest that upgrading is worthwhile for .NET developers irrespective of language changes and new framework features.

That said, .NET code will not usually perform as well as languages designed to compile to native code, such as C, C++, Swift, Rust, or Go. C# inventor Anders Hejlsberg, who now works on TypeScript, caused some upset in the .NET community earlier this year when he chose Go rather than C# for a high-performance TypeScript compiler.

Another concern for .NET users is that although the platform is open source, some of Microsoft's tooling is not. "It's just a shame that an otherwise really well-rounded language still lacks first-party open source tooling. It's unbelievable that in 2025 Microsoft still locks things as essential as a debugger behind proprietary licensing," said one developer.

Visual Studio Community Edition and the C# Dev Kit for VS Code are free for individuals or small companies but require a commercial license for enterprise use.

The download page for the .NET 10 RC states that it is only compatible with Visual Studio 2026, suggesting that we can expect this to be generally available at the same time as .NET 10 in November, though developers report that it actually also works with the latest Visual Studio 2022. ®

More about

TIP US OFF

Send us news


Other stories you might like