Au 16e km, Sandy Casar (FDJ), Thomas Voeckler (Brioches la Boulangère), Stuart O’Grady (Cofidis), Jakob Piil (CSC) et Magnus Bäckstedt (Alessio) prennent le large. Ces cinq coureurs ont 15 min 20 s d’avance à 100 km de l’arrivée ; le maillot jaune Lance Armstrong ne réagit pas, peut-être prêt à lâcher la tunique pour ne pas épuiser ses équipiers trop vite. Surtout, à cause d’un temps pluvieux et venteux, des chutes se produisent. Celle du 105e km envoie par terre Alessandro Petacchi, Michael Boogerd, Roberto Heras et quatre équipiers de l’US Postal (Rubiera, Azevedo, Beltrán et Noval). Les échappés en profitent, et ils ont 17 min 20 s d’avance au 135e km.
À Chartres, les échappés s'observent et Voeckler attaque. Il est rattrapé et Sandy Casar lance le sprint, mais c'est Stuart O'Grady qui remporte l'étape[1]. Le peloton arrivant avec 12 min 33 s de retard, le mieux placé des échappés au général, le récent champion de France Thomas Voeckler endosse le maillot jaune[2].