One is HttpGet method and another one is HttpPost.
In HttpPost you post the data from client side to controller. That's why that method has one parameter of type your model.
Now if you want to pass a model as a parameter, you need to use the form. You can pass the model values on submission of this form.
Refer this-
https://evolpin.wordpress.com/2011/05/09/mvc-and-posting-data-using-html-beginform-and-url-routing/[
^]
And about the returnUrl, you can specify that in @Html.BeginForm(), somethng like-
@using(Html.BeginForm("action", "controller", new { returnUrl= "your url" }, FormMethod.Post, null)
-KR