Task-based async programming — ValueTask, ConfigureAwait, cancellation tokens, and async best practices.
Five passes over the same idea, each from a different angle. Do them in order, or jump to whichever you need.
C# async/await enables non-blocking I/O operations. Key concepts: Task and ValueTask, async state machine, ConfigureAwait(false), CancellationToken, async streams (IAsyncEnumerable), and common pitfalls (async void, deadlocks, fire-and-forget). Understanding the SynchronizationContext is crucial.