title: Best refactoring for the dreaded While (True) loop
body: <p>If, like me, you shiver at the site of a While (True) loop, then you too must have thought long and hard about the best way to refactor it away.  I've seen several different implementations, none really better than any other, such as the timer &amp; delegate combination.</p>
  
  <p>So what's the best way you've come up with or seen to refactor the dreaded While (True) loop?</p>
  
  <p><b>Edit</b>: As some comments mentioned, my intent was for this question to be an "infinite loop" refactoring, such as running a Windows style service where the only stop conditions would be OnStop or a fatal exception.</p>