sapales repetir temas no está permitido. Te van a dar con el látigo.
Yo cuanto más pueda hacer con
CSS mejor, pero obviamente hay mucho mayor soporte para
javascript, sobre todo para las cosas más novedosas de CSS. CSS suele ser más limpio, pero seguramente para lo que necesites tengas que usar javascript.
Puedes hacer uso de alguna librería como
jQuery, y dentro de esta librería plugins como, entre otros muchos,
Easing —muy útil para movimientos. Te facilitaría bastante las cosas.
Después también puedes hacer uso gráficos vectoriales —
SVG— o también meterte con los
canvas de HTML5, ambos admiten animaciones también, ya sea mediante CSS y/o javascript.
Personalmente yo de esto último he tocado muy poco, pero el soporte para SVG es más amplio que el de los canvas.