It is no wonder that Apache and IIS are always being compared. They are both robust programs which are simple to use. Both programs also have a similar history, although some would say that Apache's beginnings are more important since it is based on HTTPd, arguably the first steps in the creation of the internet.
Since IIS is a Microsoft product and was only made to work in a Windows environment, there are lots of Windows based tools that can be used for administration of different server functions. This is a big draw for corporate clientele. Big businesses have also been very hesitant to use any open source software, making IIS the clear choice for them.
One of Apache's biggest highlights is its ability to run on almost every major operating system out there. This is a huge deal for Unix and Linux enthusiasts. In fact the Apache core will run on almost any platform that can run a C compiler. Apache is touted to be more secure, more stable and run faster then IIS, but Apache is missing one major component that IIS has. Apache cannot run a full .NET environment although it can run asp.net and C# with the help of some add-ons. Despite this one drawback, Apache is still leading the way in web server technology because of its stability, advanced security, and ease of use.