title: Why OnlyOnFaulted didn't catch the exeception at taskObject.Wait()?
body: <p>I'm studying and experimenting with task continuation, but I don't know how an exception can pass through the <code>TaskContinuationOption.OnlyOnFaulted</code>.</p>
  
  <p>To what I know <code>Task.Wait()</code> provides a place where a program can catch any exceptions that may be thrown by a task but I don't know why it returns the exception but the task with <code>TaskContinuationOption.OnlyOnFaulted</code> continues.</p>
  
  <pre><code>Task t1 = Task.Factory.StartNew(()=&gt; {
      Console.WriteLine("T1 started");
      throw new Exception();
  });
  
  Task tFault = t1.ContinueWith((x)=&gt; {
      Console.WriteLine("T fault started");
  
  }, TaskContinuationOptions.OnlyOnFaulted);
  
  Task t3 = tFault.ContinueWith((x)=&gt; {
      Console.WriteLine("T3 started");
  });
  t1.Wait();
  </code></pre>
  
  <p>I'm expecting t1 to wait for the chained tasks to complete without throwing an exception.</p>