возможно он писал это в первой версии C#.
там еще не было метода TryParse, а кидаться эксепшнами из метода parse() по пустякам это напорядок медленнее, чем простая проверка.
Все же я считаю что писать надо более понятливо имхо.
Просто надо знать как компилятор «сделает» код.
Иногда «понятливый», но «большой» код компилятор преобразует в гораздо быстрый и меньший — машинный, а вот «оптимизированный» (чтобы меньше было строк) может преобразовать в большую «кучу»…
Для меня в этом коде бредового — сравнение с false. Но это, как говорится, классика.
На тему валидации чисел — в Java я бы делал регуляркой, не знаю, как с этим в шарпах. Но это уже больше дело вкуса.
Очередной перл выданный индусами.