When you are using a checkbox on your view in MVC then that checkbox also add a extra hidden filed for same name and when you go submit then you will get hidden filed value of check box.
Now check box and hidden filed have same name then a single request variable has both values comma separate like "true,false" but first value always for checkbox and second value for hidden filed so you can split this and get check box value.
[HttpPost]
public ActionResult Index(FormCollection form)
{
bool MyBoolValue= Convert.ToBoolean(form["MyBoolValue"].Split(',')[0]);
return View();
}
other way
View is
@Html.CheckBoxFor(x => x.MyBoolValue, Model.MyBoolValue)
[HttpPost]
public ActionResult Index(Modal model)
{
bool MyBoolValue= Convert.ToBoolean(model.MyBoolValue);
return View();
}