En 2005, Martin Campbell cherche son nouveau James Bond. Les auditions s'enchaînent et le réalisateur rencontre plusieurs acteurs. Parmi eux, Henry Cavill, un acteur britannique pas très connu. Pendant son casting, le beau brun joue une scène en serviette nouée autour de la taille.
"Je me rappelle du réalisateur, Martin Campbell, disant 'un peu rondouillard ici, Henry'", se souvient l'acteur de 36 ans. "J'aurais probablement dû mieux me préparer, a-t-il raconté au magazine Men's Health. Je ne savais pas comment faire un régime ou m'entraîner. Et je suis content que Martin m'ait fait la réflexion parce que j'encaisse bien la vérité. Ça m'a aidé à me prendre en main."
Henry n'aura finalement pas le rôle au profit de Daniel Craig. C'est le sixième acteur a incarné 007, mais il est australien et non anglais. Le public crie au scandale ! La même année, cinq ans après sa première apparition au cinéma, Henry Cavill voit enfin le bout du tunnel lorsqu'il accepte de donner la réplique à James Franco dans Tristan & Yseult. Le film n'est pas un grand succès, pas plus critique que public, mais il permet au jeune acteur d'inscrire son nom aux castings de Stardust. De 2007 à 2010, il campe le rôle Charles Brandon dans la série Les Tudors.
En 2013, il prend la cape et le collant de Superman dans Man of Steel, ce qui le propulse sur le devant de la scène internationale. Costume qu'il reprendra deux fois sous l'égide de Zack Snyder. Il sera aussi très remarqué dans Mission impossible: Fallout, au côté de Tom Cruise.