title: Different behavior async/await in almost the same methods
body: <p>Let's say I have two async methods</p>
  
  <pre><code>public async static Task RunAsync1()
  {
      await Task.Delay(2000);
      await Task.Delay(2000);
  }
  </code></pre>
  
  <p>and</p>
  
  <pre><code>public async static Task RunAsync2()
  {
      var t1 = Task.Delay(2000);
      var t2 = Task.Delay(2000);
  
      await t1;
      await t2;
  }
  </code></pre>
  
  <p>Then I use it like</p>
  
  <pre><code>public static void M()
  {
      RunAsync1().GetAwaiter().GetResult();
      RunAsync2().GetAwaiter().GetResult();
  }
  </code></pre>
  
  <p>In a result the <code>RunAsync1</code> will run <strong>4sec</strong> but <code>RunAsync2</code> only <strong>2sec</strong> <br>
  Can anybody explain why? Methods are almost the same. What is the difference? </p>