title: Asynchronously wait for Task<T> without async/await
body: <p>I want my <code>Task</code> to complete before I perform other actions. If I use </p>
  
  <pre><code>Task.WaitAll(task);
  </code></pre>
  
  <p>it certainly blocks my UI thread. What is the best way to wait asynchronously for a <code>Task</code> to complete, without using <code>async / await</code> (I'm using .NET v4.0)?</p>