(лирическое отступление, к мысли не предираться) Нет такой программы, в которой отлавливались бы абсолютно все ошибки, ведь программ (сложнее HelloWord) без ошибок не бывает по определению. Но хочется поймать все.
Например, как отловить сообщение "Программа выполнила недопустимую операцию и будет закрыта...", или чисто NET`овское предложение продолжить или завершить работу?
Зачем это надо? Применений можно много придумать, одно из них: убить свою иконку в трее.