Разница между операторами await и async в C# заключается в их назначении:
- Оператор async используется для маркировки метода как асинхронного. metanit.com www.cyberforum.ru Он указывает, что метод может содержать одно или несколько выражений await. metanit.com При этом слово async, указанное в определении метода, не делает его автоматически асинхронным. metanit.com
- Оператор await предваряет выполнение задачи, которая будет выполняться асинхронно. metanit.com Он проверяет, завершена ли ожидаемая операция. blog.stephencleary.com Если завершена, то метод продолжает выполняться синхронно, как обычный метод. blog.stephencleary.com Если нет, то оператор действует асинхронно: сообщает ожидаемой операции запустить оставшуюся часть метода после завершения и возвращается из асинхронного метода. blog.stephencleary.com
Таким образом, async позволяет использовать оператор await, а await предваряет выполнение задачи, которая будет выполняться асинхронно, и позволяет методу приостанавливать себя в ожидании какой-либо операции. metanit.com stackoverflow.com