title: Regarding usage of Task.Start() , Task.Run() and Task.Factory.StartNew()
body: <p>I just saw 3 routines regarding TPL usage which do the same job; here is the code:</p>
  
  <pre><code>public static void Main()
  {
      Thread.CurrentThread.Name = "Main";
  
      // Create a task and supply a user delegate by using a lambda expression. 
      Task taskA = new Task( () =&gt; Console.WriteLine("Hello from taskA."));
      // Start the task.
      taskA.Start();
  
      // Output a message from the calling thread.
      Console.WriteLine("Hello from thread '{0}'.", 
                    Thread.CurrentThread.Name);
      taskA.Wait();
  }
  
  public static void Main()
  {
      Thread.CurrentThread.Name = "Main";
  
      // Define and run the task.
      Task taskA = Task.Run( () =&gt; Console.WriteLine("Hello from taskA."));
  
      // Output a message from the calling thread.
      Console.WriteLine("Hello from thread '{0}'.", 
                        Thread.CurrentThread.Name);
      taskA.Wait();
  }
  
  public static void Main()
  {
      Thread.CurrentThread.Name = "Main";
  
      // Better: Create and start the task in one operation. 
      Task taskA = Task.Factory.StartNew(() =&gt; Console.WriteLine("Hello from taskA."));
  
      // Output a message from the calling thread.
      Console.WriteLine("Hello from thread '{0}'.", 
                      Thread.CurrentThread.Name);
  
      taskA.Wait();                  
  }
  </code></pre>
  
  <p>I just do not understand why MS gives 3 different ways to run jobs in TPL because they all work the same: <code>Task.Start()</code>, <code>Task.Run()</code> and <code>Task.Factory.StartNew()</code>.</p>
  
  <p>Tell me, are <code>Task.Start()</code>, <code>Task.Run()</code> and <code>Task.Factory.StartNew()</code> all used for the same purpose or do they have different significance?</p>
  
  <p>When should one use <code>Task.Start()</code>, when should one use <code>Task.Run()</code> and when should one use <code>Task.Factory.StartNew()</code>?</p>
  
  <p>Please help me to understand their real usage as per scenario in great detail with examples, thanks.</p>