Jude Law claims he is "too old" to be a big screen heartthrob.

The 38-year-old actor - who will play a betrayed husband opposite Keira Knightley in 'Anna Karenina' - says his days of being the dashing love interest in movies are behind him and he is now being passed over in favour of his younger peers.

Speaking at Cannes Film Festival, he told Daily Mail columnist Baz Bamigboye: "I'm the cuckold. I'm the husband she discards. I can't play the dashing young blade in films any more, those parts don't come to me."

In the Joe Wright-directed movie Jude's character will be humiliated when his wife falls for the handsome army officer Count Vronsky, played by 20-year-old Aaron Johnson.

However, Jude isn't bitter about losing out on heartthrob roles and has previously revealed he is relieved that audiences are no longer focusing purely on his looks.

He explained: "My goal was always to be recognised as a good actor but no one was interested in that, simply because society just wants to warm towards your appearance. This is the great blemish of society.

"When you suddenly appear on the scene and you are the new face, everything centres on you. I experienced this in my mid-20s and I found it rather hard.

"I think it will be interesting to be old. It involves a lot of possibilities. The future doesn't frighten me at all. On the contrary, I am looking forward to it.

"If I have a look around at the moment I feel great relief because finally others are entering the limelight. Men like Robert Pattinson must now play the Adonis. For me it was always a restraint, a restriction."