title: Running multiple C# Task Async
body: <p>Hi normally I would do this with a Background Worker, but I would like to do it with C# Task instead, just to understand Task better.</p>
  
  <p>The thing is that I have a class with the following properties</p>
  
  <pre><code>    private int _number1;
      public int Number1
      {
          get { return _number1; }
          set { _number1 = value; OnPropertyChanged("Number1");}
      }
  
      private int _number2;
      public int Number2
      {
          get { return _number2; }
          set { _number2 = value; OnPropertyChanged("Number2");}
      }
  </code></pre>
  
  <p>Please note that I use the INotifyPropertyChanged.</p>
  
  <pre><code>Number1 = Task&lt;int&gt;.Factory.StartNew(() =&gt; GenerateResult()).Result;
  Number2 = Task&lt;int&gt;.Factory.StartNew(() =&gt; GenerateResult2()).Result;
  </code></pre>
  
  <p>The GenerateResult and GenerateResult2 are just dumme methods, who sleeps and then return a number.</p>
  
  <p>How would I make this work Async? Since right now, GenerateResult2() is first called when GenerateResult() is finished. </p>
  
  <p>I need it to be able work Async, since I have no idea of when each task is going to finish or even if its going to finish.</p>