Home What is the purpose of "return await" in C#?
 Is there any scenario where writing method like this: public async Task DoSomethingAsync() { // Some synchronous code might or might not be here... // return await DoAnotherThingAsync(); }  instead of this: public Task DoSomethingAsync() { // Some synchronous code might or might not be here... // return DoAnotherThingAsync(); }  would make a sense? Why use return await construct when you can directly return Task from the inner DoAnotherThingAsync() invocation? I see code with return await in so many places, I think I should have missed something. But as far as I understand, not using async/await keywords in this case and directly returning the Task would be functionally equivalent. Why add additional overhead of additional await layer?