Performance: In my experience both perform comparably in low-stress conditions however UNIX servers under high load (which is what is important) are superior to Windows.
Stability: Linux/Unix operating systems has traditionally been believed to be very stable and robust. A web site housed on a Linux operating system will have very high up-time (of the order of 99.9%). Of course, other factors such as power supply, network admin skills, and network load etc. also matter when it comes to maintaining the system uptime.
Cost: The Linux OS comes free of cost (or at very insignificant cost, usually cost of distribution). Also, it has full fledged server, and desk top applications that comes free along with the OS. These server applications (such as FTP, Web Server, DNS Server, File Server etc.) being free, are also very stable.
Easy to use: You can use almost all types of file extensions (or scripts) when using Linux web server. Commonly, the following extensions are supported:
.cgi, .html, .htm, .pl, .php, .shtml, .xml, and others.
Basically it means that you can host web sites that use different types of server side scripts including .cgi, .pl, .php, and .asp (with plug-in).
Easy to transfer hosting: A web site designed to be hosted on a Linux based web server can be hosted on a Windows web server easily, where as the reverse is not always true.
Widely acceptable : Linux/Unix based web hosting is most widely used compared to Windows based web hosting.