Après le départ d'Abbeville, dans la Somme, la course se dirige vers l'ouest et arrive en Seine-Maritime, à Eu. Les coureurs longent la côte du Tréport jusqu'à Fécamp. Trois côtes de quatrième catégorie sont placées sur cette portion du parcours : les côtes du mont Huon (km 38), de Dieppe (km 69) et de Pourville-sur-Mer (km 74). Le sprint intermédiaire de l'étape se trouve à Fécamp (km 140). Après cette ville, le parcours prend la direction de Rouen. Une dernière côte de quatrième catégorie se trouve à Toussaint (km 143). L'arrivée est jugée dans le centre de Rouen, après 214 km de course[1].
L'écart entre le peloton et les échappés se réduit progressivement et à 10 km de l'arrivée, l'échappée est condamnée. Quelques attaques ne donnent rien, le dernier trio d'attaquants composé de Samuel Dumoulin (Cofidis), Sylvain Chavanel (Omega Pharma-Quick Step) et Wout Poels (Vacansoleil-DCM) est rejoint à 4 km du but. Alors qu'un sprint massif se profile, une chute collective coupe le peloton à 2,5 km de la ligne, Cavendish est à terre et ne participe donc pas au sprint final. Bien emmené par l'équipe Lotto-Belisol, André Greipel produit son effort à 200 m de la ligne et s'impose devant Alessandro Petacchi (Lampre-ISD) et Tom Veelers (Argos-Shimano). C'est la deuxième victoire d'étape de sa carrière sur le Tour de France. Le maillot jaune reste sur les épaules de Fabian Cancellara (RadioShack-Nissan).