No hay ninguna razón teórica que indique que setTimeout sea mejor que setInterval, aunque en la práctica a mi me dio mejores resultados usar setTimeout. Justamente digo esto en una parte de ese artículo:
Cita: Antes de continuar, una aclaración sobre el uso de setTimeout en lugar de setInterval. Si bien es cierto que usar setInterval mejoraría la legibilidad del código y evitaría llamadas recursivas expresas al método init de nuestro objeto transicion, en todas las pruebas de rendimiento que realicé setTimeout arrojó mejores resultados que setInterval. Por eso yo me decanté por él, pero cada uno puede usar lo que más le guste.
Pero te repito, no me baso en nada teórico porque la teoría dice que sería indistinto usar uno u otro. Me baso sólo en mis test y gustos personales.