WPF requires STA threading.
One of the changes to the threading support that shipped in the .Net Framework 2.0 was the introduction of SynchronizationContext .
The purpose of this class is to provide a model to make communication between threads...

Since the dotnet source code are avaible now, including WPF, it's a good chance for us to read the code and go deep.
So, I will write a series of article descring something found in the code.
You can get more information on how to get the source...