Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
This article describes new features in .NET 11. It was last updated for release candidate 1 (RC 1).
.NET 11 is currently in release candidate. General availability is expected in November 2026. You can download .NET 11 here.
.NET runtime
The .NET 11 runtime includes:
- Updated minimum hardware requirements for x86/x64 and Arm64 architectures, requiring more modern instruction sets to improve performance and reduce maintenance complexity.
- Runtime-native async (Runtime Async), which produces cleaner stack traces and lower overhead. Runtime Async no longer requires
<EnablePreviewFeatures>true</EnablePreviewFeatures>for projects that targetnet11.0. The runtime libraries themselves are compiled withruntime-async=on. - Runtime Async performance improvements, including JIT compilation of a dedicated runtime-async version of synchronous task-returning methods, async continuations that opt out of
ExecutionContextcapture when no ambient state is in use, and tail-merged suspension points that reduce generated code size. - Runtime Async tiered compilation, task and value-task factory intrinsics, and implicit tailcall improvements that reduce warm-up allocations and speed up common
awaitpaths. - JIT improvements for bounds check elimination, redundant checked context removal, devirtualization, switch expression folding, constant-folding
SequenceEqual, and redundant branch elimination. There are also new Arm SVE2 intrinsics, improved hardware-intrinsic cost modeling, and a fasterMath.BigMulon x64 that emits a singleMULinstruction. - CoreCLR on WebAssembly now runs the libraries test suite end to end, and the runtime adds AVX-VNNI-512 hardware intrinsics for vectorized multiply-add workloads.
- In-process crash report logging that captures the managed stack trace and runtime state before the process exits, available on mobile platforms as well as Linux and macOS.
- NativeAOT faster interface dispatch using a shared dispatch helper, reducing binary size at call sites and improving throughput for interface-heavy workloads.
- SIMD lane construction and composition APIs (
CreateGeometricSequence,Zip,Unzip, and theConcatfamily) acrossVector128<T>,Vector256<T>,Vector512<T>,Vector64<T>, andVector<T>. - Hardware FP16 instructions for
Halfarithmetic and conversions on x64 and Arm64.
For more information, see What's new in the .NET 11 runtime.
.NET libraries
The .NET 11 libraries include new APIs for:
- Process expansion with run-and-capture helpers, fire-and-forget launches, SafeProcessHandle lifecycle methods, tighter handle control, new ProcessStartInfo.StartSuspended for suspended starts, Process.TryGetProcessById(Int32, Process) for safe process lookup, and Process.Signal(PosixSignal) with ProcessExitStatus for signaling processes and inspecting how they exited.
- Compression, including improved Base64 APIs, new methods for ZIP archive entries, Zstandard compression in System.IO.Compression, CRC32 validation when reading ZIP entries, and a
Reset()method on the streamless Deflate, ZLib, and GZip encoders and decoders. - New numeric APIs, including IEEE 754 decimal floating-point types (Decimal32, Decimal64, and Decimal128), INumberBase<TSelf>.TryParsePartial for delimiter-aware parsing, and generic Complex<T>.
- System.Text.Json improvements, including generic type info retrieval, JsonNamingPolicy.PascalCase, per-member naming policy overrides, type-level ignore conditions, F# discriminated union support, Utf8JsonWriter.Reset with options,
SerializeAsyncEnumerableoverloads forPipeWritertargets and top-level values (NDJSON) output, serialization of C# union types with the newJsonUnionTypeStructuralClassifier, built-in converters forBFloat16and the new decimal floating-point types, and base64 schema metadata fromJsonSchemaExporter. - Built-in OpenTelemetry metrics for MemoryCache.
- Discriminated-union scaffolding (
UnionAttributeandIUnion) in System.Runtime.CompilerServices. - Tar archive format selection and GNU sparse format 1.0 support.
Consolesupport for theFORCE_COLORenvironment variable.- TLS handshake hardening, certificate-validation alerts on Linux, channel binding validation on Unix, and an experimental caller-driven TLS session API (
TlsBufferSessionandTlsSocketSession). - Networking additions, including HTTP request-body compression wrappers, configurable HTTP connection eviction, and typed DNS record resolution APIs on Windows, Linux, and macOS through Dns and the new DnsResolver class.
- HTTP/2 automatic downgrade for Windows authentication.
- LINQ join improvements, including
FullJoinand tuple-returningJoinandGroupJoinoverloads, across Enumerable, Queryable, and AsyncEnumerable. - A new X25519DiffieHellman class for X25519 key exchange, and unpadded AES Key Wrap support (
EncryptKeyWrap/DecryptKeyWrap) on Aes. - Generic overloads on Random —
NextInteger<T>andNextBinaryFloat<T>— that work with any numeric generic type. - EqualityComparer<T>.Create factory method that creates a comparer from a key selector.
- QuicStream.Priority for HTTP/3 stream prioritization.
- Video MIME type constants in MediaTypeNames.Video.
- Four new
Streamtypes (ReadOnlyMemoryStream,WritableMemoryStream,ReadOnlySequenceStream,StringStream) that wrap in-memory data without copying. - BitArray constructors that accept
ReadOnlySpan<bool>,ReadOnlySpan<byte>, andReadOnlySpan<int>. - Asynchronous validation in
System.ComponentModel.DataAnnotationsviaAsyncValidationAttribute,IAsyncValidatableObject, and newValidator.ValidateObjectAsyncmethods, along with asynchronousMicrosoft.Extensions.Optionsvalidation throughIAsyncStartupValidator. - Activity tracing configuration using rules in
Microsoft.Extensions.Diagnostics, enabling declarative control ofActivitytracing without wiring upActivityListenerinstances manually. - Cross-lane vector operations including
CreateGeometricSequence,Zip,Unzip, and theConcatfamily onVector128<T>,Vector256<T>,Vector512<T>,Vector64<T>, andVector<T>.
For more information, see What's new in the .NET 11 libraries.
.NET SDK
The .NET 11 SDK includes:
- Smaller SDK installers on Linux and macOS through assembly deduplication, with additional savings by skipping crossgen for
DotnetTools-only assemblies. - Improved CA1873 code analyzer with reduced noise and clearer diagnostic messages.
- Support for creating and editing solution filters (
.slnf) from thedotnet slnCLI. - File-based app support for
#:includeto split apps across multiple files and to include compiled DLL references directly, plus Native AOT build-output reuse anddotnet formatsupport for file-based apps. - A new
dotnet run -eoption to pass environment variables from the command line. dotnet watchimprovements, including Aspire app-host integration, automatic crash recovery, and device selection for MAUI and mobile projects.- OpenTelemetry replaces Application Insights for CLI telemetry.
- NativeAOT CLI entry point that serves the full command surface—including
--helpfor all built-in commands and tool/external-command launches—out-of-process from the AOT path, skipping managed CLI startup. - NativeAOT CLI and the MSBuild server are now enabled by default.
dotnet testimprovements, including--no-dependencies,DOTNET_TEST_RUNNERenvironment variable,--use-current-runtime,--test-modulesexclusion patterns, per-assembly test counts, and live display of in-flight tests.dotnet testsupport for Android, iOS, macOS, and Mac Catalyst test projects, with device selection and newandroidtest,iostest,macostest, andmaccatalysttesttemplates.- Additional
dotnet testrun-level options, including--timeout,--maximum-failed-tests,--results-directory-layout per-module, and an experimental affected-test workflow, along with traversal-project support, JSON output for--list-tests, and artifact post-processing for multi-module runs. - Built-in test templates support xUnit v3 (defaulting to Microsoft.Testing.Platform) and NUnit with an opt-in
--test-runneroption. - Multi-architecture container image builds with Podman using the SDK's container publishing support.
- Container publishing now prefers platform-native local runtimes (
wslcon Windows andcontaineron macOS) before Docker and Podman, produces reproducible image digests throughSOURCE_DATE_EPOCH, and skips redundant layer uploads when the target manifest already exists. - TypeScript compilation outputs from Razor Class Libraries now integrate correctly with the Static Web Assets pipeline.
dotnet formatlimits.editorconfigdiscovery in folder mode to the ancestor directories of included files.- The
dotnetCLI no longer suppresses the MSBuild build server whenDOTNET_CLI_USE_MSBUILD_SERVERis unset, and the OTLP telemetry exporter activates on any standardOTEL_EXPORTER_OTLP_*environment variable.
For more information, see What's new in the SDK for .NET 11.
ASP.NET Core
For information about what's new in ASP.NET Core, see What's new in ASP.NET Core for .NET 11.
C# 15
C# 15 is the default language version for projects that target .NET 11 and includes these features:
- Collection expression arguments
- Union types
- Closed hierarchies
- Extension indexers
- Labeled
breakandcontinue - Memory safety
For information about new C# features, see What's new in C# 15.
EF Core
See What's new in EF Core for .NET 11.
Extensions libraries
See dotnet/extensions release notes.
Windows Forms
See What's new in Windows Forms for .NET 11.
WPF
See What's new in WPF in .NET 11.