Microsoft Eliminates Async State Machines in .NET 11 to Protect Developers During Interviews

Microsoft announced Runtime Async in .NET 11, moving much of the async execution machinery from the C# compiler into the CoreCLR runtime.

The company mentioned on Microsoft Build that the change improves performance and simplifies asynchronous execution. It also appears to solve another long-standing problem.

"We noticed many developers use async/await every day, but struggle to explain how async state machines work during interviews."

For years, the C# compiler generated state machines behind every async method. Developers learned terms like MoveNext(), AsyncTaskMethodBuilder, and continuations, often hoping nobody would ask for more details.

With Runtime Async, interviewers are expected to update their question lists.

"State machines were one of our favorite topics," said one anonymous architect. "Now we'll have to return to covariance, contravariance, and memory models."

Microsoft confirmed developers should still understand asynchronous programming concepts.

How to Speed Up SQL Queries

Queries running slowly?

Consider adding an index.

How to Speed Up SQL Queries

Indexes help SQL Server:

  • Find data faster
  • Reduce table scans
  • Improve filtering performance
  • Improve sorting performance
  • Improve join performance

Not every column needs an index, but columns used in WHERE clauses often benefit from one.

What is your favorite indexing strategy?

How to Use SaveChangesAsync in .NET

Want asynchronous database writes in EF Core?

Use SaveChangesAsync() instead of SaveChanges().

How to Use SaveChangesAsync in .NET

Benefits:

  • Doesn't block the calling thread
  • Works better under load
  • Integrates with async/await
  • Recommended for ASP.NET Core applications
  • Available since EF Core was released

What other EF Core performance tips do you use?