.Result vs .Wait() vs GetAwaiter().GetResult() vs await in C#: which should you use?
await is the right answer almost every time. When you truly must block, GetAwaiter().GetResult() beats .Result and .Wait() because it throws the original exception. A decision matrix for .NET 11 and C# 14.