Hi Lyte,
The important advantages of Apache would have to be:
Decentralised Per-user configuration - The important thing about that is user configurations are kept away from the main server configuration. So users can configure Apache for their portion of Webspace without endangering the security of other users or the webserver as a whole.
Self-healing processes - Apache runs as a parent process and delegates jobs to child processes. So in the event of bad code that runs amock, it can recover without having to shutdown the entire webserver. Compare that to Microsoft IIS which includes other services such as FTP, and SMTP in one application. If IIS crashed, the webserver, mail and ftp would be offline until it was restarted.
3rd Party Modules - Just about every scripting language out there would work on apache. So it caters for alot of people with different coding practices.
Less important advantages would be:
Upgrading is much better. period. No rebooting for an update to a service like apache and others.
Free... plain and simple. Free software, free support.
Downsides??
IIS has a prettier configuration interface
