In classic mode requests are mapped to an ISAPI handler based on file extension (in the case of asp.net extension is .aspx and handler is asp.net_isapi.dll,which is a C/C++ ISAPI filter responsible for invoking ASP.NET). In classic mode it is hard to make extension-less url’s working (like asp.net MVC)
in integrated mode .NET is a native part of IIS 7. So IIS can directly call HttpModule and HttpHandlers. An HttpHandler is the endpoint of a single request. For a single request there will be only one Httphandler. But any number of HttpModules can participate in the request pipeline.
UrlRoutingModule is a part of System.Web.Routing, which is present in GAC as a part of .NET 4.0 installation (IIS have direct access to this dll).
In IIS 7 all the request go through UrlRoutingModule. UrlRoutingModule map th request aganist route configuration and returns an instance of MvcHandler, MvcHandler is responsible for controller creation and all.