A common exception one can get when working with multiple threads in WPF is:
The calling thread cannot access this object because a different thread o
That would be several hundred lines of code, for something I "figured out".
But the summary is:
App_OnStartup generate a background thread
in the callback,
Call
Application.Current.MainWindow.Dispatcher.CheckAccess() - gets the exception Application.Current.Dispatcher.CheckAccess() does not