| leader | | BELOKI DORRONSORO Joseba | | ONC | | 26'21" | | 20 | |
| 1. | | ONCE - Eroski | | 26'21" | | 17 | |
| BELOKI DORRONSORO Joseba, GONZALEZ DE GALDEANO ARANZABAL Igor, AZEVEDO Jose Bento Carvalho, DIAZ JUSTO Rafael, JAKSCHE Jörg, SERRANO RODRIGUEZ Marcos Antonio, ZARRABEITIA URANGA Mikel | |
| 2. | | US Postal Service | | 14" | | 12 | |
| CRUZ Antonio, BARRY Michael, PEÑA GRISALES Victor Hugo, VANDE VELDE Christian, KJAERGAARD Steffen, HERAS HERNANDEZ Roberto, RUBIERA VIGIL Jose Luis, ZABRISKIE David | |
| 3. | | Kelme - Costa Blanca | | 15" | | 8 | |
| GUTIERREZ CATALUÑA Jose Enrique, SEVILLA RIVERA Oscar Miguel, DE LOS ANGELES SEGUI Juan Jose, GONZALEZ JIMENEZ Aitor, MANZANO RUANO Jesus Maria, TAULER LLULL Antonio, VALVERDE BELMONTE Alejandro, BOTERO ECHEVERRY Santiago, GARCIA QUESADA Carlos | |
| 4. | | Team Telekom | | 18" | | 5 | |
| ZABEL Erik, ALDAG Rolf, BARTKO Robert, KESSLER Matthias, KLIER Andreas, KLÖDEN Andreas, SCHAFFRATH Jan, VINOKOUROV Alexandr | |
| 5. | | Fassa Bortolo | | 23" | | 3 | |
| PETACCHI Alessandro, VALJAVEC Tadej, LODA Nicola, ZANETTE Denis, VELO Marco, TIRALONGO Paolo, CASAGRANDE Francesco, BALDATO Fabio, STANGELJ Gorazd | |
| 6. | | Cofidis | | 26" | | 2 | |
| CUESTA LOPEZ DE CASTRO Iñigo, FOFONOV Dmitriy, MILLAR David, TRENTIN Guido, CLAIN Médéric, LELLI Massimiliano, FERNANDEZ BUSTINZA Bingen, ATIENZA URENDEZ Daniel | |
| 7. | | iBanesto.com | | 27" | | 1 | |
| GUTIERREZ PALACIOS Jose Ivan, OSA EIZAGIRRE Aitor, MANCEBO PEREZ Francisco, MERCADO MARTIN Juan Miguel, BLANCO GIL Santiago, FLECHA GIANNONI Juan Antonio, LASTRAS GARCIA Pablo, ODRIOZOLA MUGARZA Jon | |
| 8. | | Team Coast | | 39" | | 0 | |
| BECKE Daniel, CASERO MORENO Angel Luis, PLAZA ROMERO David, GUIDI Fabrizio, ESCARTIN COTI Fernando, BELTRAN MARTINEZ Manuel, HERNANDEZ BERTRAN Jaime Javier, PEREZ RODRIGUEZ Luis, GARMENDIA ARBILLA Aitor | |
| 9. | | Mapei - Quick Step | | 42" | | 0 | |
| HORRILLO MUÑOZ Pedro, CAÑADA GRACIA David, CIONI Dario David, FREIRE GOMEZ Oscar, BRAMATI Davide, NOE Andrea, AGGIANO Elio, WEGELIUS Charles | |
| 10. | | Acqua & Sapone - Cantina Tollo | | 43" | | 0 | |
| CIPOLLINI Mario, GONZALEZ CAPILLA Santos, BENNATI Daniele, DERGANC Martin, MARTIN PERDIGUERO Miguel Angel, TRENTI Guido | |
| 11. | | Phonak | | 47" | | 0 | |
| DOMINGUEZ DOMINGUEZ Juan Carlos, SCHNIDER Daniel, BAYARRI ESTEVE Gonzalo, PEREIRO SIO Oscar, CAMENZIND Oscar, TEUTENBERG Sven, SALMON Benoît | |
| 12. | | Lampre - Daikin | | 54" | | 0 | |
| KADLEC Milan, TONKOV Pavel, GARATE CEPA Juan Manuel, CODOL Massimo, VERSTREPEN Johan | |
| 13. | | Milaneza - MSS | | 54" | | 0 | |
| FERNANDEZ MARTINEZ Victoriano, JEKER Fabian, SOUSA Rui Miguel Barbosa, MØLLER Claus Michael, LAVARINHAS Rui Agostinho Do Couto, MAURI PRAT Melcior, HORRACH RIPOLL Joan, EDO ALSINA Angel, SILVA Joao Paulo | |
| 14. | | Domo - Farm Frites | | 59" | | 0 | |
| HOSTE Leif, KLEYNEN Steven, BRUYLANDTS Dave, KASHECHKIN Andrey, MOERENHOUT Koos | |
| 15. | | Euskaltel - Euskadi | | 01'03" | | 0 | |
| ZUBELDIA AGIRRE Haimar, MAYO DIEZ Iban, MARTINEZ TRINIDAD Jose Alberto, LAISEKA JAIO Roberto, ETXEBARRIA ALKORTA David, FLORES GALARZA Iker, ARTETXE GEZURAGA Mikel | |
| 16. | | Saeco - Longoni Sport | | 01'13" | | 0 | |
| CALCAGNI Patrick, LUTTENBERGER Peter, BOSSONI Paolo, FERRARI Diego, HAUPTMAN Andrej, SZMYD Sylwester | |
| 17. | | Tacconi Sport - Emmegi | | 01'13" | | 0 | |
| SACCHI Fabio, DI LUCA Danilo, FUENTES ANGULLO Juan Manuel, BERTAGNOLLI Leonardo, SIMONI Gilberto, ASTARLOA ASCASIBAR Igor | |
| 18. | | BigMat - Auber 93 | | 01'16" | | 0 | |
| GARCIA CASAS Felix Manuel, SIVAKOV Aleksey, HEULOT Stéphane, TALABARDON Sébastien, AUGER Guillaume, KINTANA ZARATE Aitor, SAUGRAIN Cyril, JAN Xavier, HUNT Jeremy | |
| 19. | | Jazztel - Costa de Almeria | | 01'21" | | 0 | |
| CASERO MORENO Rafael, GARRIDO LIMA Jose Antonio, PECHARROMAN FABIAN Jose Antonio, TORRENT TARRES Carlos, SMETANINE Sergey, GADEO FERNANDEZ Dario, FERRIO LUQUE Jorge, GUILLAMON RUIZ Juan Carlos, VALDES PRIETO Ricardo | |
| 20. | | Alessio | | 01'24" | | 0 | |
| MIHOLJEVIC Vladimir, CAUCCHIOLI Pietro, BROGNARA Andrea, ZANETTI Mauro, FURLAN Angelo, VINALE Alberto, NIKACEVIC Aleksandar | |
| 21. | | Ag2r Prévoyance | | 01'26" | | 0 | |
| CHAURREAU BERNARDEZ Iñigo, ASTARLOZA CHAURREAU Mikel, BERGES Stéphane, ORIOL Christophe, PORTAL Nicolas, LODER Thierry, BOTCHAROV Aleksandr, AUS Lauri, INAUDI Nicolas | |
| 22. | | Colchon Relax - Fuenlabrada | | 01'31" | | 0 | |
| GARRIDO MAYORGA Martin Gerardo, BURGOS ROJO Nacor, COLOM MAS Antonio, REBOLLO AGUADO Jose Luis, LAGUNA GARCIA Oscar, MAESTRE RODRIGUEZ Jose Manuel, NOVAL GONZALEZ Benjamin, NIETO FERNANDEZ German, VAZQUEZ PALOMO Jose Manuel | |
| 23. | | Index - Alexia Alluminio | | 02'38" | | 0 | |
| QUARANTA Ivan, DI GRANDE Giuseppe, REISS Andris, GALLI Daniele, SERINA Corrado, MAGNANI Marco, ANDRIOTTO Dario, SAVOLDELLI Paolo | |
|
| - | | YAKOVLEV Sergey | | TEL | | 26" | | 0 | |
| - | | GARCIA ACOSTA Jose Vicente | | BAN | | 31" | | 0 | |
| - | | LOMBARDI Giovanni | | ACQ | | 01'05" | | 0 | |
| - | | GRABSCH Bert | | PHO | | 01'07" | | 0 | |
| - | | HRUSKA Jan | | ONC | | 01'12" | | 0 | |
| - | | BERGMANN Reto | | PHO | | 01'18" | | 0 | |
| - | | GLOMSER Gerrit | | SAE | | 01'21" | | 0 | |
| - | | TANKINK Bram | | DOM | | 01'29" | | 0 | |
| - | | WHITE Matthew | | USP | | 02'01" | | 0 | |
| - | | GALLETTI Alessio | | SAE | | 02'15" | | 0 | |
| - | | DE WOLF Steve | | DOM | | 02'25" | | 0 | |
| - | | LOPEZ DE MUNAIN RUIZ DE GAUNA Alberto | | EUS | | 02'30" | | 0 | |
| - | | PRADERA RODRIGUEZ Mikel | | ONC | | 02'35" | | 0 | |
| - | | BLIJLEVENS Jeroen | | DOM | | 02'45" | | 0 | |
| - | | VAN GOOLEN Jurgen | | DOM | | 02'45" | | 0 | |
| - | | KLEMENCIC Zoran | | TAC | | 02'47" | | 0 | |
| - | | BALDUCCI Gabriele | | TAC | | 02'47" | | 0 | |
| - | | ZUCCONI Pietro | | TAC | | 02'47" | | 0 | |
| - | | SPRUCH Zbigniew | | LAM | | 02'53" | | 0 | |
| - | | SPEZIALETTI Alessandro | | SAE | | 02'57" | | 0 | |
| - | | SASSONE Robert | | COF | | 03'24" | | 0 | |
| - | | BERTOLETTI Simone | | LAM | | 03'26" | | 0 | |
| - | | PICCOLI Mariano | | LAM | | 03'26" | | 0 | |
| - | | GERRIKAGOITIA ARRIEN Gorka | | EUS | | 03'37" | | 0 | |
| - | | SVORADA Jan | | LAM | | 03'42" | | 0 | |
| - | | GUERRA Alessandro | | ALA | | 04'30" | | 0 | |
| - | | SCIREA Mario | | ACQ | | 04'43" | | 0 | |
| - | | FERRARA Raffaele | | ALS | | 04'47" | | 0 | |
| - | | PIERI Dario | | ALS | | 04'56" | | 0 | |
| - | | LOBATO ELVIRA Ruben | | ACQ | | 08'01" | | 0 | |
|
| DNS | | RATTI Eddy | | MAP | | | | 0 | |