title: Built-in base class for controllers in ASP.NET MVC: Controller or ControllerBase?
body: <p>What is the built-in base class for controllers in ASP.NET MVC: </p>
  
  <p>System.Web.Mvc.Controller or System.Web.Mvc.ControllerBase?</p>
  
  <p>It is unclear to me after searching on Google:</p>
  
  <ol>
  <li><p>On <a href="http://www.asp.net/mvc/overview/older-versions-1/controllers-and-routing/aspnet-mvc-controllers-overview-cs" rel="noreferrer" title="www.asp.netquot;">www.ASP.NET</a>: " A controller is a class that derives from the base System.Web.Mvc.Controller class."</p></li>
  <li><p>On <a href="http://www.codeproject.com/Tips/590576/Understanding-the-IController-and-ControllerBase-i" rel="noreferrer">codeproject</a>: "The abstract ControllerBase class represents the base class for all MVC controllers."</p></li>
  <li><p>On MSDN: "The base class for all controllers is the ControllerBase class, which provides general MVC handling. The Controller class inherits from ControllerBase and is the default implement of a controller."</p></li>
  <li><p>In the book "Pro ASP.NET MVC 5 Framework" from Adam Freeman: "In ASP.NET MVC, controllers are just C# classes (usually inheriting from System.Web.Mvc.Controller, the framework's built-in controller base class)."</p></li>
  </ol>
  
  <p>Who is right? What does "Built-in base class" mean exactly in this context?
  Is "Controller" the built-in base class and "ControllerBase" the ???? (what would be the right wording?) base class?</p>