I can see why MS went with UTF-16. As someone who had experience from before that era, and comes from a non-English culture, before UTF-16, most people used crazy codepages and encodings for their stuff, resulting in gobbledygook once something went wrong - and it always did.
If you run with the assumption that all UTF-16 characters are two bytes, you still get something that's usable for 99% of the Earth's population.