.NET 10 Performance Edition

#563 – June 29, 2025

performance improvements in .NET 10 compared to .NET 9

.NET 10 Performance Edition
6 minutes by Steven Giesel

The article summarizes performance improvements in .NET 10 compared to .NET 9. It highlights several key optimizations including stack allocation of small arrays, delegate escape analysis, LINQ operations with SIMD support, and System.Text.Json enhancements. Gains are solid with up to 3x faster delegate operations, 50% faster LINQ integer operations, and 10% faster JSON serializations.

Bufstream: Schema-Aware Kafka Replacement for C# Development
sponsored by Buf

Meet Bufstream, a drop-in replacement for Apache Kafka that's up to 8x less expensive to operate and has Protobuf-first data governance. Ready to modernize your streaming? Join Buf's workshop on July 10 for a technical deep dive, use cases, and deployment best practices. Your questions answered!

How to use lifetimes in ASP.NET Core dependency injection?
8 minutes by David Grace

ASP.NET Core dependency injection offers three service lifetimes: Singleton, Scoped, and Transient. David demonstrates how different lifetimes behave across requests and when injected in multiple areas of an application, with singleton and scoped services maintaining consistency while transient services create new instances at each injection point.

Diagnosing latency in .NET: Background GC and the Large Object Heap
13 minutes by Anders Pedersen

Anders dives deep into slow requests in his .NET service. He discovers that they were caused by Large Object Heap allocations being blocked during Background Garbage Collection.

Debug distributed systems using .NET Aspire
6 minutes by Julio Casal

You know the drill. Everything works fine in isolation, but put all the pieces together, and suddenly your microservices start misbehaving in ways that make no sense. Julio explains how .NET Aspire's observability features simplify debugging distributed systems.

Unpacking Zip Folders into Windows Long File Paths
9 minutes by Rick Strahl

Challenges with ZipFile Extraction Windows' notorious MAX_PATH limit of 260 characters creates problems when extracting zip files with deeply nested structures. The good news is in some cases you can work around the limitations even generically if the problem space is simple enough.

And the most popular article from the last issue was:

newsletters