Async Task замораживает пользовательский интерфейс

У меня есть такой метод:

private async Task DoSomething()
{
    // long running work here.
}

Когда я вызываю такой метод, он блокирует пользовательский интерфейс:

Task t = DoSomething();

Я должен сделать один из них, чтобы сделать его неблокирующим:

Task t = new Task(() => DoSomething());
t.Start();

// Or

Task t = Task.Factory.StartNew(() => DoSomething());

Так какой смысл в асинхронности / ожидании, когда вы можете просто использовать Задачи, как они были в framework 4, и использоватьTask.Wait() на местеawait?

РЕДАКТИРОВАТЬ: Я понимаю все ваши ответы, но ни один из них не касается моего последнего абзаца. Кто-нибудь может дать мне пример многопоточности на основе задач, где async / await улучшает читаемость и / или поток программы?

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

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