title: When is the System.Threading.Task useful?
body: <p>I have used most of the Threading library extensively.  I am fairly familiar with creating new Threads, creating BackgroundWorkers and using the built-in .NET ThreadPool (which are all very cool).</p>
  
  <p>However, I have never found a reason to use the <a href="http://msdn.microsoft.com/en-us/library/system.threading.tasks.task.aspx" rel="noreferrer">Task</a> class.  I have seen maybe one or two examples of people using them, but the examples weren't very clear and they didn't give a high-level overview of why one should use a task instead of a new thread.</p>
  
  <p>Question 1: From a high-level, when is using a task useful versus one of the other methods for parallelism in .NET?</p>
  
  <p>Question 2: Does anyone have a simple and/or medium difficulty example demonstrating how to use tasks?</p>