I have a background thread that handles communication with an external service. Each time the background thread receives a message I\'d like to pass it to the UI thread for
You can use Control.Invoke and use a delegate. The delegate will be executed on the thread that created the control.
http://msdn.microsoft.com/en-us/library/zyzhdc6b.aspx