Skip to main content

Command Palette

Search for a command to run...

.NET 11 vs .NET 10: We Benchmarked Both on a Real Production App (Should You Upgrade?)

Updated
2 min read

We run a multi-tenant analytics SaaS on ASP.NET Core (~110k MAU, ~3,200 req/sec peak, ~95k LOC) and benchmarked .NET 9, .NET 10 (current LTS), and .NET 11 previews on the same harness and the same production workload, not synthetic microbenchmarks.

The numbers (9 to 10, GA, near-zero code changes)

  • Throughput / instance: +11%

  • API p95: 132 ms to 120 ms

  • Working set / instance: 415 MB to 380 MB

  • Native AOT cold start: 84 ms to 61 ms

  • Native AOT image size: 41 MB to 33 MB

  • Language: C# 13 to C# 14

What it covers

  • Runtime/JIT free wins (AVX10.2, devirtualization, loop opts)

  • GC/memory (DATAS right-sizing the heap)

  • ASP.NET Core built-in OpenAPI + minimal-API validation

  • C# 14: the field keyword + extension members (~700 LOC deleted)

  • Native AOT startup and container size

  • Microsoft.Extensions.AI becoming first-class

  • The actual 9 to 10 migration (~1.5 engineer-days for 95k LOC)

.NET 11 previews show another ~6-9% throughput, p95 down 5-7%, and ~10% faster startup, but it is preview (GA Nov 2026).

Verdict

Upgrade to the LTS for the free, measured wins; pilot the .NET 11 preview in CI, ship after GA (Nov 2026). And benchmark your own hot paths, generic benchmarks don't reflect your workload.

Full post with before/after code and the decision checklist: https://prepstack.co.in/blog/dotnet-11-vs-dotnet-10-benchmarked-production