Question: what is the difference between `Html.BeginForm`() and `Ajax.Beginform`() in MVC3. I just want to know the scenarios where I can use `Html.BeginForm`() and where I can use `Ajax.Beginform`().

Answer: 
**Html.BeginForm()** will create a form on the page that submits its values to the server as a synchronous HTTP request, refreshing the entire page in the process.

**Ajax.BeginForm()** creates a form that submits its values using an asynchronous ajax request. This allows a portion of the page to be update without requiring that the entire page be refreshed.
@Html.BeginForm is used to post the data by full page refresh whereas @Ajax.BeginForm performs Post back function and allows some portion of Html to be reloaded rather than overall page refresh.