TaskScheduler.UnobservedTaskException never gets called
问题 Based on my research, I have learned the following: TaskScheduler.UnobservedTaskException must wait for the task to be garbage collected before that task's unobserved exception will bubble up to the UnobservedTaskException event. If you're using Task.Wait() , it'll never get called anyway, because you're blocking on an impending result from the Task, hence the exception will be thrown on Task.Wait() rather than bubble up to the UnobservedException event. Calling GC.Collect() manually is