フォームコントロールは別スレッドからのおさわり厳禁なんで、アクセスするときはcontrol.Invokeメソッドを使わなければなりません。詳しくは: Windowsフォームで別スレッドからコントロールを操作するには? http://www.atmarkit.co.jp/ait/articles/0506/17/news111.html 例えば、フォームコントロールのアップデートをスレッドセーフにするには private void TextUpdate(Control control, string text) { Action act = () => { control.Text = text; }; if(control.InvokeRequired) { control.Invoke(act); } else { act(); } } のように書くのが一般的かと思います(あるいはデリゲ