Qual é a diferença entre Task.Start / Wait e Async / Await?

Posso estar faltando alguma coisa, mas qual é a diferença entre fazer: public void MyMethod() { Task t = Task.Factory.StartNew(DoSomethingThatTakesTime); t.Wait(); UpdateLabelToSayItsComplete(); } public async void MyMethod() { var result = Task.Factory.StartNew(DoSomethingThatTakesTime);...