Skyfall star Daniel Craig has beaten out David Beckham to be crowned the Most Stylish Man of 2012. 

Bosses at GQ magazine annually compile The 25 Most Stylish Men list - and Craig has been named the guy with the best fashion sense in 2012. 

Zac Efron comes in second with soccer ace and model Beckham in third and R&B singer Bruno Mars in fourth spot. 

Ewan McGregor rounds out the top five, while Twilight hunk Robert Pattinson makes the list at six. 

Jay-Z, Jennifer Aniston's fiance Justin Theroux, Ryan Gosling, Maroon 5 frontman Adam Levine and Joseph Gordon-Levitt also make the 2012 style list.