win32k.sys is also rife with security flaws, so scrapping it has arguably reliability benefits too.
GDI is just too old.
GDI was created long before multi-core CPUs gained traction, so it paints everything on the single thread. XAML uses two cores, rendering and animations run on a separate thread called “composition thread”.
GDI was designed long before GPUs gained traction, so it paints everything on the CPU. XAML manipulate textures on the GPU: it’s faster because GPUs are massively parallel, it uses less energy because custom hardware is more energy efficient than a general-purpose CPU. Here’s more about that: https://msdn.microsoft.com/en-us/library/windows/desktop/ff7... It’s for D2D API, but both WinRT/XAML and WinPhone/SL platforms use GPU in the similar fashion to D2D.