Это не сравниваемые вещи.
if/else проверяет ошибку в указанном месте.
Exception же перехватит ее внутри любого уровня вложенности, и не даст завершиться программе, если где-то внутри случилась критическая ошибка, которую вы перехватываете.
То есть, если вы где-то забыли проставить if/else, результат будет внезапное завершение программы.
exception можно поставить на самом высоком уровне, и добиться, что будет закрыто какое-то конкретное окно, не будет выполнена какая-то конкретная операция, но приложение останется работать и выполнять другие функции.
Зависит от того, что вы делаете. Если игрушку на 2 кнопки - то можно и без exceptionов, если же многопользовательское приложение, где из-за непредусмотренного действия одного юзера, упадет все приложение для всех пользователей - if/else будет явно недостаточно.