title: Is Task.Result the same as .GetAwaiter.GetResult()?
body: <p>I was recently reading some code that uses a lot of async methods, but then sometimes needs to execute them synchronously. The code does:</p>
  
  <pre><code>Foo foo = GetFooAsync(...).GetAwaiter().GetResult();
  </code></pre>
  
  <p>Is this the same as</p>
  
  <pre><code>Foo foo = GetFooAsync(...).Result;
  </code></pre>