Respostas:
Depende do tipo de animação que você precisa.
<canvas>
animação é essencialmente JavaScript - é apenas um formato diferente no qual as coisas podem ser desenhadas. Se você quiser ser mais preciso, você deve diferenciar entre animar elementos HTML, SVG (que Raphael.js usos) e HTML5<canvas>
Esta é uma adição à grande resposta da Virtuosi Media:
A Apple recentemente usou imagens JPEG e PNG estáticas para animação em seu site. Eles usam JavaScript para mudar as imagens. É uma ótima técnica se você não possui muitos quadros, precisa de suporte à transparência alfa, deseja que a animação esteja no lugar da página e se deseja amplo suporte ao navegador. A desvantagem é o tamanho e o esforço do download.
Também pode ser interativo. Se você rolar para a seção Smart Cover da página do iPad da Apple, poderá vê-lo em ação: http://www.apple.com/ipad/features/
Ao sobrepor imagens que contêm uma transparência na parte superior das imagens animadas nas camadas abaixo da imagem. Você verá que PNG24 é o único formato de imagem em que a suavização de serrilhado combina corretamente com as imagens de segundo plano. Com GIF e PNG8, você descobrirá que suas bordas são todas grossas. Não parece muito bom, mas muito fácil de perder.