I am making a WinForms program, which requires separate threads For readability and maintainability, i have separated all non-GUI code out into different classes. This class
you can use backgroundworker to make your other thread, it allow you to deal easily with your GUI
http://msdn.microsoft.com/en-us/library/cc221403(v=vs.95).aspx