<p>What is the point of an action returning ActionResult?</p>

ActionResult is the base class for many different types of controller results.  By returning the base class, the controller action can return different types of results depending on the outcome of the method -- a ViewResult, a RedirectToActionResult, etc.  ActionResult contains all of the data needed by the View or new Action that is the result of the current controller action.