CVS suit uniquement les modifications fichier par fichier, tandis que SVN suit un commit entier comme une nouvelle révision, ce qui signifie qu'il est plus facile de suivre l'historique de votre projet. Ajoutez le fait que tous les logiciels de contrôle de source modernes utilisent le concept de révision, il est donc beaucoup plus facile de migrer depuis SVN que depuis CVS.
Il y a aussi le problème de commit atomique. Bien que je ne l'ai rencontré qu'une seule fois, il est possible que 2 personnes s'engageant ensemble dans CVS puissent entrer en conflit, perdre des données et mettre votre client dans un état incohérent. Lorsqu'ils sont détectés tôt, ces problèmes ne sont pas majeurs car vos données sont toujours là quelque part, mais cela peut être pénible dans un environnement stressant.
Et enfin, peu d'outils sont développés autour de CVS. Alors que les nouveaux et brillants nouveaux outils comme Git ou Mercurial manquent encore d'outils, SVN dispose d'une base d'applications assez importante sur n'importe quel système.
EDIT 2015 : Sérieusement, cette réponse a maintenant 7 ans. Oubliez SVN, allez utiliser Git comme tout le monde !