The bottom line in .Net is that you shouldn't be modifying the UI from anything other than the primary thread, if you are then you need to invoke the changes from the main thread.
Could you post more of the code as trying to figure out multi-threaded problems can be difficult at best of times, never mind when you only have tiny snippets of code to work with.