Back in late 2004, Aaron Skonnard wrote an interesting article that details how a developer can create a lightweight, special-purpose web server without IIS. In his sample, Aaron chooses to host ASMX web services, but one could easily create other types of specialty web servers. Interestingly enough along with hosting the ASP.NET Runtime the other enabling technologies that allow for this functionality are none other than Microsoft's kernel-mode HTTP listener, Http.sys and the HttpListener classes of System.Net. Both of which are WNDP API's.
Run ASMX Without IIS
Now you may ask "why would I want to create my own web server"? And to that question we would have to agree that for the vast majority you would not want to for a production system. But the article and sample does demonstrate that it is indeed possible to create some of the basic web serving functionality with very little code and effort.