Я использую сырой HTML все время по разным причинам и только добавляю атрибут runat = "server" в свои теги, если мне нужен доступ к ним из моих классов.
Элементы управления ASP.NET действительно хороши, но через некоторое время люди (или, может быть, только я) обычно обнаруживают, что они вам мешают, особенно в сложных сценариях или если вы делаете какой-то продвинутый JavaScript. И мы даже не упомянули состояние просмотра, которое может легко занимать половину мегабайта (!) На странице среднего размера с некоторыми данными на ней. Вы просто имеете больше контроля над своей страницей с необработанным HTML.
Так что это может звучать немного неловко, но после некоторого использования элементов управления ASP.NET я вернулся к (в основном) сырому HTML. Это немного похоже на использование какого-то действительно хорошего WYSIWYG-редактора, а затем на понимание того, что для выполнения сложных задач требуется больше усилий, чем, например, с помощью блокнота.