Is this just for the *nix folks?
In crude Windows-speak, Docker is equivalent to just one instance of C:\Windows (the kernel) running on your host computer. On top of that you run multiple lightweight containers each having their own C:\Program Files and C:\Users. So container A and container B run simultaneously, share the same kernel, but can't see each other's apps & data.Right now you would have dozens of Windows services running as 'system' in both your host and your VM. This avoids having two lots of all that stuff.
To answer your question - Linux has always had its kernel separate from the user-space hence container evolution naturally started there. But it appears Windows may be working to catch up.