Watch video

This is a quick introduction to the concept of surface controllers. 
As you have seen and read in the *Fundamentals *part of the tutorials, you can query Umbraco data and show that data on your site.

Of course, the site is more than just showing data. 
You also want some data submissions. You want to add some forms to your site. This is where surface controllers come in place.

Basically, surface controllers are MVC Controllers that interact with the front end rendering of an Umbraco page. ** 
You will need a bit of **MVC
 knowledge. If you are totally new to this concept, it is recommended that you go to, and check out their MVC tutorials.

**A surface controller is used to render Child Action content and mainly handle form data submission. **The surface controller is basically a regular ASP.Net MVC Controller, but it inherits from Umbraco.Web.Mvc.SurfaceController.

By inheriting, it's auto routed. 
You have instant access to Umbraco helper methods and properties.