SignalR Authentication Refresh in .NET 11: No More Forced Reconnects on Token Expiry
.NET 11 lets SignalR clients swap in a fresh access token on a live connection instead of forcing a reconnect when the old one expires. Here's how to configure it on the server and client, and where the guardrails are.
Extension Indexers in C# 15: Finally, this[] on Types You Don't Own
C# 15 rounds out extension members with indexers, letting you add this[] syntax to types you can't modify. Here's how the syntax works, how resolution is prioritised against real indexers, and where the preview feature still bites.
ASP.NET Core Ditches CSRF Tokens for Fetch Metadata in .NET 11
.NET 11 introduces an automatic CSRF protection middleware that uses browser Fetch Metadata headers instead of tokens. It's on by default, requires no code changes, and fundamentally changes how cross-site request forgery is handled in ASP.NET Core.
LINQ Finally Gets FullJoin and Tuple-Returning Overloads in .NET 11
.NET 11 adds Enumerable.FullJoin for full outer joins and tuple-returning overloads for Join, GroupJoin, LeftJoin, and RightJoin, eliminating the result selector boilerplate that has plagued LINQ joins since 2007.
Closed Class Hierarchies in C# 15: Exhaustive Matching Comes to Inheritance
C# 15 introduces the closed modifier for class hierarchies, restricting derivation to the declaring assembly and enabling exhaustive switch expressions without a default arm. Here is how it works, how it differs from unions and sealed classes, and where it fits in domain modelling.
Blazor SSR Finally Gets Client-Side Validation in .NET 11
With .NET 11 Preview 5, Blazor SSR forms gain automatic client-side validation and a new async validation pipeline, closing the biggest gap between static rendering and interactive modes.
.NET MAUI Moves to CoreCLR: The End of the Mono Split
.NET 11 Preview 4 makes CoreCLR the default runtime for MAUI on Android, iOS, and Mac Catalyst, ending the long-standing Mono/CoreCLR split and bringing tiered JIT, PGO, full diagnostics, and a path to NativeAOT on mobile.
C# Is Redesigning unsafe: What Safety Contracts Mean for Your Code
C# is overhauling the unsafe keyword from a syntax gate into a formal safety contract system with propagation, suppression boundaries, and documentation requirements. Here is what changes, how it compares to Rust, and what you need to do to prepare.
HTTP QUERY: The New Method That Fixes What GET and POST Got Wrong
.NET 11 Preview 4 adds first-class support for the HTTP QUERY method -- a safe, idempotent verb that accepts request bodies. Here is how it works in ASP.NET Core, why it matters for API design, and where the ecosystem stands today.
VSTest Drops Newtonsoft.Json: What Changes for Your Test Projects in .NET 11
VSTest is removing its long-standing Newtonsoft.Json dependency in .NET 11 Preview 4, switching to System.Text.Json on .NET and JSONite on .NET Framework. Here's what breaks, why it matters, and how to fix it.
Pin Clustering Arrives in .NET MAUI Maps: No More Third-Party Dependencies
.NET 11 Preview 3 adds built-in pin clustering to the MAUI Map control, grouping nearby markers automatically on iOS, Mac Catalyst, and Android without requiring external packages.
Blazor's Virtualize Component Finally Handles Variable-Height Items in .NET 11
.NET 11 Preview 3 reworks the Virtualize component to measure actual item heights at runtime using a running average, eliminating the broken spacing and scroll jumps that plagued lists with variable-height content since the component shipped in .NET 5.
EF Core 11 Preview 3: Cheaper Change Tracking, Safer Migrations, and Cleaner SQL
EF Core 11 Preview 3 ships GetEntriesForState to bypass DetectChanges, ExcludeForeignKeyFromMigrations for cross-boundary relationships, migration tree divergence detection, and leaner join generation. It also bumps SqlClient to 7.0 and makes MigrationsNotFound throw by default.
#:include Lands in .NET 11: File-Based Apps Finally Go Multi-File
.NET 11 Preview 3 adds the #:include and #:exclude directives to file-based apps, letting you split scripts across multiple files without reaching for a .csproj. Here is how they work, what they don't do, and where the edges still need sanding.
dotnet watch Finally Works With Aspire: Per-Resource Hot Reload in .NET 11
The .NET 11 Preview 3 SDK ships a named-pipe coordination layer between dotnet watch and Aspire AppHosts, enabling per-resource hot reload, crash recovery with deferred relaunch, and proper Ctrl+C handling for Windows desktop apps.
.NET 11 JIT and Runtime Improvements: Free Performance You Didn't Ask For
.NET 11 Preview 3 ships JIT improvements that eliminate bounds checks, fold switch expressions into branchless code, and speed up casts -- plus VM-level wins like 200x faster interface dispatch on iOS and faster GUID generation on Linux. Here is what changed and why it matters.
System.Text.Json in .NET 11: PascalCase, Per-Member Naming, and Type-Level Ignore
Three new features in .NET 11 Preview 3 give you fine-grained control over JSON serialisation: a built-in PascalCase naming policy, a per-member naming attribute, and type-level ignore conditions.
.NET 11 SDK Preview 3: The CLI Improvements That Sharpen Your Inner Dev Loop
.NET 11 Preview 3 brings multi-file file-based apps via #:include, inline environment variables with dotnet run -e, CLI-editable solution filters, and a dotnet watch that recovers from crashes and integrates with Aspire.
Full-Text Search in EF Core 11: Ranked Results Without Leaving LINQ
EF Core 11 finally brings first-class full-text search support for SQL Server, including migration-managed catalogs and indexes, and FREETEXTTABLE/CONTAINSTABLE translation with ranking scores baked into your LINQ queries.
Blazor Finally Gets TempData: Flash Messages and PRG Without the Workarounds
.NET 11 Preview 2 brings TempData to Blazor static SSR as a cascading parameter, enabling flash messages, one-time notifications, and the POST-Redirect-GET pattern without custom state hacks.
EF Core 11 Preview: One-Step Migrations, Full-Text Indexes, and the End of Sync I/O
EF Core 11 brings one-step migrations, managed full-text search indexes, complex types with TPT/TPC inheritance, MaxBy/MinBy translation, and a hard cut from synchronous Cosmos DB access. Here is what matters and what will break.
Vector Search in EF Core: From Exact Distance to Hybrid Search with SQL Server 2025
EF Core now supports native vector search against SQL Server 2025, from exact VECTOR_DISTANCE queries to approximate DiskANN-indexed VECTOR_SEARCH and hybrid search combining semantic and full-text results.
Native OpenTelemetry Tracing in ASP.NET Core: .NET 11 Drops the External Dependency
ASP.NET Core in .NET 11 Preview 2 natively populates OpenTelemetry semantic convention attributes on HTTP server activities, eliminating the need for the OpenTelemetry.Instrumentation.AspNetCore package. Here is what changed, how to migrate, and what to watch out for.
Collection Expression Arguments in C# 15: Passing Capacity, Comparers, and More with the with() Syntax
C# 15 adds the with() element to collection expressions, letting you pass constructor arguments like capacity and comparers directly inside the bracket syntax. Here is how it works, what it compiles to, and where it falls short.
Runtime Async in .NET 11: The End of Compiler-Generated State Machines
How .NET 11's runtime async moves async/await handling from the compiler into the runtime itself, delivering cleaner stack traces, better debugging, and reduced allocations without changing a line of your code.