Basic Async/Await in C#

From the C# Programming Language cheat sheet · Async/Await and Tasks · verified Jul 2026

Basic Async/Await

Asynchronous methods and Task handling

csharp
// Async method
public async Task<string> GetDataAsync()
{
    await Task.Delay(1000);
    return "Data";
}

// Using async method
string result = await GetDataAsync();

// Multiple async operations
Task<string> task1 = GetDataAsync();
Task<string> task2 = GetDataAsync();
string[] results = await Task.WhenAll(task1, task2);
💡 async/await makes asynchronous code look synchronous
⚡ Use Task.WhenAll for concurrent operations
📌 Avoid async void except for event handlers
🟢 ConfigureAwait(false) can improve performance in libraries
Back to the full C# Programming Language cheat sheet