Apparently Daniel Craig and Javier Bardem (who plays the current Bond villain Silva) have an "erotically charged scene" in Skyfall (above) in which Silva strokes Bond's chest.
Bond reportedly asks the villain: "What makes you think this is my first time?"
Movieline's Frank Diagiacomo asked Craig about it at the press junket:
"What are you going to do?" Craig replied breezily, getting a nice laugh from the crowd, but then he added: "I don't see the world in sexual divisions." He then changed the subject from Bond to to Bardem's wonderfully flamboyant character, Silva. "Someone suggested that Silva may be gay," Craig said with a big smile. "And I'm like, I think he'll f**k anything."
Producers suggest it's all a power struggle. As for Bardem:
Asked how Silva's "sexuality informed [Bardem's] interpretation of the character, the actor responded; "It was part of the game, but it’s not entirely the game." Bardem explained that his "main goal" as Silva was creating "uncomfortable situations" for anyone who crossed his path. "Within that, you can read anything that you want or wish," Bardem said. "But it was more about putting the other person in a very uncomfortable situation where even James Bond doesn't know how to get out of it."
More at Movieline.
It's worth noting that back in 2006 Craig reportedly suggested to producers that they give Bond a gay scene.