When an MVC application receives a user request there is a whole list of things that occur that, during the development of most remedial applications, you simply do not have to worry about. As the developer we usually pick up the story at the point where we write Controllers and Actions.

The MvcHandler is really *the* thing responsible for initiating the ASP.NET pipeline for an MVC application, it receives a Controller instance from the MVC controller factory, these are the five steps to memorize:

  1. MVCHandler creates a Controller Factory.
  2. Controller Factory creates the corresponding Controller object and MVCHandler calls the Execute Method.
  3. ControllerActionInvoker examines RequestContext and uses that to determine the action call.
  4. ControllerActionInvoker also determines the values to be passed to the action as parameters.
  5. ControllerActionInvoker then runs the action

If you forget everything else, please remember the above steps (eventually there will be a test). It does not get much simpler than that, if you want an in depth reveal on MVCHandler (and trust me you do) check out this post.