Will man aus einem eigenen Thread auf ein UI Element in einer WinForms oder WPF Applikation zugreifen, führt das zu einer Exception, da dies nur dem UI Thread erlaubt ist. Mit Hilfe einer anyonymen Delegate Methode kann ein Code-Block elegant im UI Thread ausgeführt werden:

BeginInvoke( (MethodInvoker)delegate()
{
  // This runs on the UI thread!
  this.Text = data;
});