Я сделал замечание, что фактическая последовательность разрыва строки отличается от браузера к браузеру.
Если у вас есть многострочная текстовая область на странице, и страница отправляется, то:
IE возвращает " r n", чтобы указать новые строки. FF возвращает « n» в этом случае.
Я проверил это где-то в конце 2006 года, так что теперь оно может быть другим.
Я не верю, что это может иметь какое-либо отношение к WebForms и MVC. Оба просто обрабатывают отправленные данные и возвращают их вам как есть.
Если вы хотите как-то обработать и заменить эти символы, имеет смысл делать это в длинном-коротком порядке:
string userText = form["Text"];
userText = userText.Replace ("
", "<br/>").Replace ("
", "<br/>");