Ответ 1
В то время как я не знаю умов тех, кто разработал ASP.NET MVC Framework, для меня большой:
Контроллер экземпляра создается один раз за запрос, одновременно может выполняться несколько запросов. Если контроллер является статическим, любое состояние на контроллере совместно используется для всех запросов одновременно. Вы, вероятно, этого не хотите. Обновление этого общего состояния становится минным полем блокировки конкуренции, возможными взаимоблокировками и очень трудно отслеживать ошибки, если блокировка не выполнена должным образом.
Короче говоря, статический контроллер был бы кошмаром для работы.