Статический - надёжность работы ПО, меньшая вероятность возникновения внезапного бага при работе с данными, т.к. отсутствует автоматическое приведение типов и распределение памяти.
Динамический - проще и быстрее разработка, но крайне неустойчив к внезапным ошибкам, переполнениям, утечкам. Не рекомендуется там, где необходима хотя бы минимальная надёжность ПО.