System.Obsolete
один из самых полезных атрибутов в платформе, по-моему. Способность повысить предупреждение о коде, который больше не должен использоваться, очень полезна. Я люблю иметь способ сказать разработчикам, что что-то больше не должно использоваться, а также наличие способа объяснить, почему и указывают на лучший/новый способ сделать что-то.
Conditional attribute
довольно удобно также для использования отладки. Это позволяет Вам добавлять методы в своем коде в целях отладки, которые не будут скомпилированы, когда Вы создадите свое решение для выпуска.
Тогда существует много атрибутов, характерных для Веб-элементов управления, которые я нахожу полезными, но те более конкретны и не имеют никакого использования за пределами разработки управления сервером от того, что я нашел.