We are migrating Spring framework from 2.5 to 3.1.

As we used to do all things in xml files (application-contexte-xxx.xml), and now almost every documentation and every forum post talk in "Annotation", is that a good idea to migrate to Annotation approach?

What are the main differences between XML and Annotation choice? And what are their benefits and issues?

Thanks for any ideas or advice or even more questions!