title: Does MessageBox.Show() automatically marshall to the UI Thread?
body: <p>I launch a thread via ThreadPool.QueueUserWorkItem which has a messagebox dialogue in it:</p>
  
  <blockquote>
    <p>System.Windows.Forms.DialogResult dr = System.Windows.Forms.MessageBox.Show("would you like to download upgrade in background? ..", "Upgrade Available", MessageBoxButtons.YesNo);</p>
  </blockquote>
  
  <p>It seems to work fine however I am a little suspicious after some customers suggested they were not getting the message popping up. I had the feeling in .NET framework 2.0+ you do not need to marshal this particular call, it does it for you. Correct?</p>
  
  <p>This is a semi-related topic for interest:
  <a href="https://stackoverflow.com/questions/195593/why-use-a-owner-window-in-messagebox-show">Why use a owner window in MessageBox.Show?</a></p>