A route is a URL pattern that is mapped to a handler. The handler can be a physical file, such as an .aspx file in our web application. Routing module is responsible for mapping incoming browser requests to particular MVC controller actions.
When you create a new ASP.NET MVC application, the application is already configured to use ASP.NET Routing. ASP.NET Routing is setup in two places.
First, ASP.NET Routing is enabled in your application's Web configuration file (Web.config file). There are four sections in the configuration file that are relevant to routing:
1) the system.web.httpModules section,
2) the system.web.httpHandlers section,
3) the system.webserver.modules section, and
4) the system.webserver.handlers section.
Be careful not to delete these sections because without these sections routing will no longer work.
Second, and more importantly, a route table is created in the application's Global.asax file. The Global.asax file is a special file that contains event handlers for ASP.NET application lifecycle events. The route table is created during the Application Start event.
It Supports ASP.Net Routing which provides better URL (Universe Resource Locator) Mapping in Our MVC Applications. In ASP.NET routing URL can be very useful for Search Engine Optimization (SEO) and Representation State Transfer (REST).
Routing: The messages are routed to the server for making the delivery of the request easier and provide the URL Mapping.
Routing is a stand-alone component that matches incoming requests to IHttpHandlers by URL pattern. MvcHandler is, itself, an IHttpHandler, which acts as a kind of proxy to other IHttpHandlers configured in the Routes table.