title: C# How to run my two function at same time asynchronously
body: <p>Below is sample program i have written. i am learning usage of async/await.
  when i execute the code then i saw first <code>GetAllTheCats</code> execute and when complete then <code>GetAllTheFood</code> execute. so this is not parallel. Tell me how could i run two routine at same time asynchronously which will update two different label control. if possible please restructure my code.</p>
  
  <pre><code>private async void button1_Click(object sender, EventArgs e)
          {
              await Task.Run(() =&gt; GetAllTheCats());
              await Task.Run(() =&gt; GetAllTheFood());
          }
  
          public string GetAllTheCats()
          {
              // Do stuff, like hit the Db, spin around, dance, jump, etc...
              // It all takes some time.
              Thread.Sleep(2000);
              return "";
          }
  
          public string GetAllTheFood()
          {
              // Do more stuff, like hit the Db, nom nom noms...
              // It all takes some time.
              Thread.Sleep(2000);
  
              return "";
          }
  </code></pre>