Use IIS to host your service unless you need to use a transport that IIS does not support
Jason Taylor, Prashant Bansode, Carlos Farre, Madhu Sundararajan, Steve Gregersen
Use IIS to host your WCF service because it provides a large number of features for efficient service management and scalability. IIS 6.0 only supports bindings over http so if you need to use TCP, MSMQ or named pipes you should host in a Windows service instead.
IIS 7.0 supports all the commonly used transport protocols such as HTTP, TCP, MSMQ, and named pipes.
By using IIS as your WCF service host you can take full advantage of IIS features, such as process recycling, idle shutdown, process health monitoring, and message-based activation.