An async method returns as soon as an await statement is reached, if the thing awaited hasn't finished. Once it completes, the method continues execution after that await statement. Try putting a break point on the return statement and it should get hit twice.