Почему существует асинхронное ключевое слово?

Просматривая канал 9 msdn видео, я нашел следующий оставшийся без ответа комментарий и надеялся, что кто-нибудь сможет это объяснить?

Я не понимаю смысл ключевого слова async. Почему бы просто не разрешить ключевое слово await в любое время, когда метод возвращает Task, точно так же, как итераторы могут давать return для любого метода, который возвращает IEnumerable.

Я уверен, что есть веская причина, я просто хотел бы понять, почему вышеупомянутое предложение не было возможно.

Ответы на вопрос(4)

Ваш ответ на вопрос