What's New in .NET 9

New Features Overview

Posted by Rodrigo Castro on June 6, 2025

.NET 9 is here: and it’s not just a version bump. Microsoft continues to push the platform forward with meaningful updates that empower developers to build faster, smarter, and more cloud-native applications.

🚀 Native AOT for ASP.NET Core is Now Mainstream

Native AOT (Ahead-of-Time Compilation) is no longer experimental: it’s officially supported for ASP.NET Core apps.

Why this matters:

  • Startup time is dramatically faster (cold starts feel instant)
  • Reduced memory footprint (up to 50% smaller in some scenarios)
  • Ideal for microservices, serverless functions, and containerized apps
1
dotnet publish -c Release -r linux-x64 --aot

This builds a native, self-contained executable. Zero JIT at runtime. I’ve been using this to deliver an auto-update tool to rapidly and constantly deliver on-premises apps while we off-load and shift components and services to cloud.

🧩 Cloud-Optimized Templates

.NET 9 introduces new project templates tailored for cloud-native applications:

  • Built-in support for OpenTelemetry
  • Health checks, metrics, and structured logging enabled by default
  • First-class support for Kubernetes, Azure Container Apps, and Dapr

Start with:

1
dotnet new webapi --use-cloud-setup

🧠 C# 13: Cleaner, Safer, Smarter

Alongside .NET 9, C# 13 introduces incremental language improvements:

  • Params Span<T>: Pass variable arguments more efficiently
  • Required ref fields: Enforce better immutability and safe initialization
  • Collection expressions: Simplified array and list construction
  • Improved pattern matching

These changes continue the trend toward cleaner and more expressive code.

⚡ Performance Improvements Everywhere

The .NET team keeps squeezing performance out of the runtime and libraries:

  • HTTP/3 support is now stable and blazing fast
  • System.Text.Json has new source generator enhancements
  • LINQ queries benefit from runtime-level optimizations
  • GC latency reduced in high-throughput workloads

Whether you’re writing APIs, background services, or desktop apps: you’ll feel it.

🧪 Unified Test Experience

New CLI test improvements:

1
2
dotnet test --list-tests
dotnet test --filter Category=Integration

And better integration with vstest, test coverage reports, and minimal test projects.

📦 NuGet + SDK UX Enhancements

  • dotnet add package now includes version suggestions and metadata
  • Project SDKs can include extensibility points more cleanly
  • Simplified use of source generators and analyzers

🧭 Final Thoughts

.NET 9 isn’t about flashy features: it’s about polish, performance, and real-world productivity. If you work with APIs, microservices, or cloud workloads, this release is a no-brainer upgrade.

Whether you’re containerizing everything or just building a cleaner monolith, .NET 9 has something for you.