Какие различия между Parse и Convert.To?
Parse преобразует строку  в int16 как в вашем примере.
Convert преобразует в int значение любого типа, к примеру boolean, double, float . На не инициализированной строке если использовать Parse вы получите исключение, Convert вернет 0.
Convert можно применить к классу если класс реализует интерфейс IConvertible. Тоесть если вы вводите какой то свой тип данных, то можете проводить в него конвертацию, достаточно будет реализации выше указанного интерфейса.
А еще есть пакет, который сам выбирает подходящтй способ преобразования.
https://habr.com/post/315352/