title: C# Sleep for 500 milliseconds
body: <p>Could you please tell me how do I go about pausing my program for 500 milliseconds and then continue?</p>
  
  <p>I read <code>Thread.Sleep(500)</code> is not good as it holds up the GUI thread.</p>
  
  <p>Using a timer it fires a callback ...</p>
  
  <p>I just want to wait 500ms and then continue to the next statement.</p>
  
  <p>Please advise.</p>
  
  <p>EDIT: I need to display a status bar message for 500ms and then update the message with a different one. Sorry, I meant 500 not 50.</p>
  
  <p>EDIT: I do understand what all you have said. but: [I just want to wait 500ms and then continue to the next statement.] I think because it is such a short interval i am going do a Thread.Sleep(500) on the main GUI thread. Otherwise i would have to rewrite a lot of code to accomodate this brief interval of 500 milliseconds.</p>
  
  <p>EDIT: i will try to reformat my status message so the pause is not needed.</p>