Er stonden 143 renners aan de start, slechts 89 haalden de finish. Davide Rebellin, die oorspronkelijk als tweede eindigde, testte in april 2009 positief op het gebruik van Cera en werd gediskwalificeerd.
De Spanjaarden maakten het meest de wedstrijd. Pfannberger demarreerde op 30 km van de streep en begon solo aan de slotronde. Paolo Bettini (de titelverdediger) en Valverde haakten verrassend af. Aerts ging mee op en over Pfannberger, maar op 18 km van de streep moest hij afhaken nadat er een kopgroep van 5 werd gevormd: Andy Schleck, Rebellin, Sánchez, Rogers en Kolobnev. Fabian Cancellara kwam er later nog bij. Met z'n zessen sprintten ze voor olympisch goud. Sánchez kwam als eerste over de streep, Rebellin en Cancellara vervolledigden het podium. Rebellin werd later betrapt op het gebruik van doping en werd gediskwalificeerd. Daarmee eindigde Cancellara tweede en Kolobnev derde. De eerste Belg in de lijst is Mario Aerts met een 7e plaats.