permissions, able to do whatever it liked to any part of the system, so programs were designed assuming they could do anything. Now, Windows has a much firmer foundation (the NT kernel) that like other proper operating systems (Linux, Unix, BSD, etc.) has a concept of security permissions, disallowing users from interfering with each other, etc. Unfortunately, because it was a requirement to ensure all these old 9x programs still ran, the default was to have everyone run as administrator. If you didn't, a lot of programs would fail, because they were designed assuming full system control. This is a really bad idea. It's the reason why in the Linux community, nobody runs as root all the time. UAC is designed to mitigate these problems in various ways, and scale down "programs break" to "program generates annoying pop-ups". The goal of UAC is really to get us into a position where in future, developers write their software assuming least privilege, and only requiring admin rights when it's absolutely necessary to change the global configuration of the system. It's also a good safety measure - it insulates you against bugs and vulnerabilities in the programs you run. If a hacker exploits a program that's running with admin rights, he has full control of your system, and can do whatever he likes. If he exploits a program running with limited rights, he can't even change the system time. It's all about reducing your attack surface. It's ridiculous to run as a limited