Exceptions in multithreaded application.

This is a great article about Threading in C# and how to handle Exceptions


The thread's exception will not propogate to the main thread's context. This really makes sense - by the time the exception is thrown, the main thread will typically be in a completely different scope than the one containing your exception handler.

You can catch these exceptions (typically to log them) by hooking into AppDomain.UnhandledException. See that page for details, including differences in Windows Forms applications, etc.


No, it won't. In order to catch thread exceptions you need to use Application.ThreadException.