<p><strong>iisreset</strong> will stop and start the World Wide Web Publishing Service. This, of course, applies to all of your application pools. I’m sure you noticed a process being created for each application pool. This process will handle requests for all websites associated with it. When you <strong>recycle an application pool</strong>, IIS will create a new process (keeping the old one) to serve requests. Then it tries to move all requests on the new process. After a timeout the old process will be killed automatically. You usually recycle your application pool to get rid of leaked memory (you might have a problem in your application if this needs to be a regular operation, even though it is recommended to have a scheduled recycle). As for <strong>restarting a website</strong>, it just stops and restarts serving requests for that particular website. It will continue to serve other websites on the same app pool with no interruptions.</p>
<p>If you have a session oriented application, all of the above will cause loss of session objects.</p>
<p><strong>Refreshing a website</strong> has no effect on the service/process/website and is merely a UI command to refresh the treeview (maybe you added a directory you don’t see in the management console).</p>