ViewState не пугающий для начинающих, а пугающий для экспертов. ViewState потрясающий, потому что он запутывает управление состоянием для начинающих программистов и позволяет им сосредоточиться на написании кода. Затем он снова начинает преследовать их, когда им нужно написать что-то более сложное и понять, что ViewState имеет серьезные ограничения и недостатки, но они не знают, как сделать что-то еще.
Что касается ASP.NET WebForms, я должен признать, что сначала я полностью отказался от него в пользу ASP.NET MVC (помимо поддержки некоторых устаревших приложений), но недавно обнаружил, что возвращаюсь в ASP.NET для небольших проектов. Если мне нужно что-то быстрое и грязное, я обычно обращаюсь к WebForms. Если это что-то большее, что мне придется поддерживать в будущем, я считаю MVC более привлекательным.