Web servers are computers that deliver (serves up) Web pages. Every Web server has an IP address and possibly a domain name. For example, if you enter the URL http://www.mindstick.com/DevelopersSection.aspx in your browser, this sends a request to the Web server whose domain name is http://www.mindstick.com . The server then fetches the page named DevelopersSection.aspx and sends it to your browser. Any computer can be turned into a Web server by installing server software and connecting the machine to the Internet. There are many Web server software applications, including public domain software from NCSA and Apache, and commercial packages from Microsoft, Netscape and others.
Visual Studio has its own ASP.NET Engine which is responsible for running your web application so you don't have any problems running an ASP.NET application from the VS IDE. When you want to host your site for others to access so deploy your web site on the Web Server, a web server is responsible for providing a response to requests that come from clients. When various anonymous users come in, many request also come in and the web server will give the response for each of them. IIS (Internet Information Server) is a group of Internet servers (including a Web or Hypertext Transfer Protocol server and a File Transfer Protocol server) with additional capabilities for Microsoft's Windows NT and Windows 2000 Server operating systems. IIS has its own ASP.NET Process to handle ASP.NET requests. If you look at this picture:
1. Client will send request to web browser.
2. The Web server will check request and pass the request to ASP.NET process.
3. The ASP.NET process engine will process the request and pass the response to the client using the web server.IIS handling the each and every request