Primera etapa:
Robbie McEwen (Predictor-Lotto) se convirtió en el primer líder de la Tirreno-Adriático tras adjudicarse la primera etapa disputada con salida y llegada en la localidad italiana de Civitavecchia.
El australiano superó en la primera llegada masiva al español Oscar Freire (Rabobank), que estuvo entre los mejores, a pesar de sufrir un pinchazo a 15 kilómetros de la meta.
El grupo, encabezado por el de Torrelavega y el noruego Thor Hushovd (Credit Agricole) entró a dos segundos.
El día fue propenso a las caídas y en una de ella, Vladimir Efimkin (Caisse d´Epargne) tuvo que abandonar por culpa de una fractura de la clavícula derecha.
Clasificación de la etapa:1. Robbie McEwen (AUS/Predictor-Lotto) 4:38.24.
2. OSCAR FREIRE (ESP/RABOBANK) a 2.
3. Thor Hushovd (NOR/Credit Agricole) m.t.
4. Stuart O´Grady (AUS/CSC) m.t.
5. Bernhard Eisel (AUT/Gerolsteiner) m.t.
6. Erik Zabel (ALE/Milram) m.t.
7. Allan Davis (AUT/Discovery Channel) m.t.
8. Gabriele Balducci (ITA/Acqua Sapone) m.t.
9. David Kopp (ALE/Gerolsteiner) m.t.
10. Lloyd Mondory (FRA/AG2R) m.t.
Segunda etapa:Alexander Arekeev (Acqua Sapone) se convirtió en el nuevo líder tras una larga escapada en solitario, en la etapa disputada entre Civitavecchia y Marsciano.

Arekeev, de 24 años de edad, logró así su primer triunfo como corredor profesional y lo hizo después de estar escapado durante casi toda la etapa.
El ciclista ruso saltó junto a los italianos Fortunato Baliani y Daniele Contrini (Tinkoff) y el alemán Sven Krauss (Gerolsteiner), apenas comenzada la jornada etapa y con ellos permaneció hasta que los últimos 20 kilómetros, cuando se decidió a probar en solitario.
Pese a los intentos de sus compañeros de fuga y del pelotón, Arekeev se hizo con la victoria y el liderato en Marsciano con 29 segundos de ventaja sobre Contrini y Krauss, y 54 sobre el pelotón.
Además, la nota negativa vino por parte de las caídas, siendo nuevamente perjudicado el Caisse d´Epargne, que ayer perdió al ruso Vladimir Efimkin. En el sprint por la quinta plaza, Iván Gutiérrez se cayó junto al también español Ricardo Serrano (Tinkoff) y el mexicano Moisés Aldape (Panaria). El cántabro fue trasladado al hospital con una fuerte contusión en el tórax.
Clasificación de la etapa: 1. Alexander Arekeev (RUS/Acqua Sapone) 4:52:11.
2. Daniele Contrini (ITA/Tinkoff) a 29.
3. Sven Krauss (ALE/Geroslteiner) m.t.
4. Fortunato Baliani (ITA/Panaria) 31.
5. Bernhard Eisel (AUT/T-Mobile) 54.
6. Thor Hushovd (NOR/Credit Agricole) m.t.
7. Danilo Napolitano (ITA/Lampre) m.t.
8. David Kopp (ALE/Gerolsteiner) m.t.
9. Stuart O´Grady (AUS/Team CSC) m.t.
10. Lloyd Mondory (FRA/AG2R) m.t.
Tercera etapa: 
Riccardo Ricco (Saunier Duval) se adjudicó la victoria en la tercera etapa, disputada entre las localidades de Marsciano y Macerata, y sumó su segundo triunfo en la temporada, después del logrado en la cuarta etapa del Tour de San Luis en Argentina.
En el lado negativo estuvo la caída sufrida por el italiano Iván Basso (Discovery Channel), que logró terminar con dolores la jornada y que posteriormente se marchó al hospital para hacerse unas radiografías de la muñeca izquierda.
Ricco, de 23 años, lanzó su ataque a dos kilómetros de la llegada junto a su compatriota Michele Scarponi (Aqua Sapone), al que dejó poco después. Luego supo administrar su ventaja respecto a los perseguidores e imponerse por un margen de dos segundos a Alexander Vinokourov y Andreas Kloeden.
El otro protagonista de la jornada fue el ciclista francés Dimitri Champion (Bouygues Telecom), que quiso repetir lo que hizo Akereev el día anterior. El galo saltó en el kilómetro 40 y, aunque llegó a gozar de casi 14 minutos de ventaja, no pudo administrarla ante el esfuerzo, sobre todo, del Astaná.
Clasificación de la etapa: 1. Riccardo Ricco (ITA/Saunier Duval) 5:41:22.
2. Alexander Vinokourov (KAZ/Astaná) a 2.
3. Andreas Kloeden (ALE/Astaná) m.t.
4. Stefano Garzelli (ITA/Acqua e Sapone) m.t.
5. Luca Mazzanti (ITA/Panaria) m.t.
6. Andrea Moletta (ITA/Gerolsteiner) m.t.
7. Filippo Pozzato (Ita/Liquigas) m.t.
8. Thomas Dekker (Hol/Rabobank) m.t.
9. Kim Kirchen (Lux/T-Mobile) m.t.
10. Janez Brajkovic (Slo/Discovery) m.t.
Cuarta etapa: 
El ciclista italiano del Saunier Duval Riccardo Ricco repitió triunfo en la cuarta etapa, disputada entre las localidades de Pievebovigliana y Offagna, lo que le permitió, además, hacerse con el maillot de líder.
El tramo final ascendente de la etapa fue clave para la victoria de Ricco. El corredor italiano aprovechó entonces para escaparse de sus perseguidores aprovechando que tiene mejores condiciones para escalar que Stefan Schumascher, segundo en la etapa, y Alexander Vinokourov, principal rival de Ricco en la general y que traspasó la línea de meta en tercera posición.
El susto de la jornada lo protagonizó Iván Basso (Discovery Channel), que tuvo que abandonar la carrera en el kilómetro 36 de la etapa al resentirse de su muñeca izquierda, dañada en el día anterior tras sufrir una caída.
Clasificación de la etapa:
1. Riccardo Ricco (ITA/Saunier Duval) 3:50:22.
2. Stefan Schumacher (ALE/Gerolsteiner) 3:50:26.
3. Alexandre Vinokourov (KAZ/Astana) m.t.
4. Janez Brajkovic (ESL/Discovery Channel) m.t.
5. Thomas Dekker (HOL/Rabobank) m.t.
6. Andreas Kloden (ALE/Astana) m.t.
7. Michael Boogerd (HOL/Rabobank) m.t.
8. Stefano Garzelli (ITA/Acqua e Sapone) m.t.
9. Jens Voigt (ALE/CSC) m.t.
10. Linus Gerdemann (ALE/T-Mobile) m.t.
Quinta etapa: 
Stefan Schumacher venció en la crono de la quinta etapa, consiguiendo el tiempo suficiente para desbancar al hasta entonces líder de la general, Riccardo Ricco (Saunier Duval).
Schumacher pulverizó los 20 segundos que le separaban de Ricco en la general, poniendo más de dos minutos entre el italiano y él mismo. Dado que el punto débil de Ricco es desde hace tiempo la lucha contra el cronómetro, ya se preveía que perdiese el maillot oro en la prueba contra el crono.
Los 20 kilómetros y medio de distancia entre Civitanova Marche y Civitanova Alta, sirvieron además para poner la general de la clásica transalpina bastante interesante. Las buenas clasificaciones de Kloden (Astana), a un sólo segundo del alemán, y de Vinokourov (Astana), cuarto a 13 segundos de Schumacher, dejaron una apretada clasificación en la que sólo nueve segundos separan al primero del tercer clasificado.
Pablo Lastras (Caisse d´Epargne) fue el mejor de los españoles, marcando el decimoséptimo mejor tiempo, a 54 segundos de Schumacher.
Clasificación de la etapa: 1. Stefan Schumacher (ALE/Gerolsteiner) 27:08.
2. Andreas Kloden (ALE/Astana) a 1.
3. Kim Kirchen (HOL/T-Mobile) a 6.
4. Alexandre Vinokourov (KAZ/Astana) a 13.
5. Evgeni Petrov (RUS/Tinkoff Credit System) a 21.
6. Janez Brajkovic (SLO/Discovery Channel) m.t.
7. Jens Voigt (ALE/CSC) a 24.
8. Thomas Dekker (HOL/Rabobank) a 33.
9. Vladimir Goussev (RUS/Discovery Channel) a 36.
10. Linus Gerdemann (ALE/T-Mobile) a 40.
Sexta etapa: 
El ciclista italiano Matteo Bono (Lampre-Fondital) se impuso en la penúltima etapa, disputada entre San Benedetto del Tronto y San Giacomo, mientras que el alemán Andreas Kloeden (Astaná) se convirtió en el nuevo líder de la prueba.
El corredor transalpino fue protagonista desde el principio de la jornada al escaparse junto a otros ocho compañeros, entre ellos el español Oscar Freire (Rabobank), y que llegó a tener más de siete minutos de ventaja.
De todos modos, Bono supo mostrarse más fuerte en el tramo final y en las rampas de San Giacomo (que los escapados afrontaron con cuatro minutos de ventaja), saltó a falta de cuatro kilómetros en busca de la victoria logrando adjudicarse la etapa por delante de sus compatriotas Enrico Gasparotto (Liquigas) y Giovanni Visconti (Quick Step), con 32 y 41 segundos de ventaja, respectivamente.
Además, la “carrera de los dos mares” tuvo cambio de líder a falta de una etapa. El alemán Andreas Kloeden se colocó como primer clasificado después de que su compatriota Stefan Schumacher (Gerolsteiner) perdiese 2:09 en la llegada.
Clasificación de la etapa: 1. Matteo Bono (ITA/Lampre-Fondital) 4:04:04.
2. Enrico Gasparotto (ITA/Liquigas) a 32.
3. Giovanni Visconti (ITA/Quick Step-Innergetic) 41.
4. Vasil Kiryenka (BLR/Tinkoff) 45.
5. Stephane Goubert (FRA/AG2R) 51.
6. Ricardo Ricco (ITA/Saunier Duval) 1:32.
7. Kim Kirchen (LUX/T-Mobile) m.t.
8. Michele Scarponi (ITA/Acqua e Sapone) m.t.
9. Andreas Kloeden (ALE/Astaná) m.t.
10. Janez Brajkovic (SLO/Discovery Channel) m.t.
Séptima etapa:
El corredor español Koldo Fernández, del Euskaltel-Euskadi, se impuso al sprint en la última etapa, disputada entre Civitella del Tronto y San Benedetto del Tronto, por delante del australiano Stuart O´Grady (CSC) y del italiano Gabriele Balducci (Acqua Sapone).
El triunfo final de la Tirreno fue para el alemán Andreas Kloeden (Astaná), después de una jornada en la que se ascendió un puerto, Castignano, pasado el primer tercio de la etapa y tras la que se forjó una escapada de un quinteto de ciclistas.
El pelotón aceleró su marcha y neutralizó a los escapados justo antes de las siete vueltas al circuito urbano final de 8 kilómetros, donde se formó otro grupo de 11 escapados, reducidos a seis, entre ellos Ricardo Ricco, alcanzado en los kilómetros últimos.
En la general final, Kloeden aventajó en 4 segundos al luxemburgués Kim Kirchen (T-Mobile), al que sorprendió en un sprint bonificado, y en 13 a su compañero de equipo, Alexandre Vinokourov (Astaná).
Clasificación de la etapa: 1. KOLDO FERNANDEZ (ESP/EUSKALTEL-EUSKADI) 4:38:43.
2. Stuart O´Grady (AUS/CSC) m.t.
3. Gabriele Balducci (ITA/Acqua e Sapone) m.t.
4. Ariel Maximilia Richeze (ARG/Panaria) m.t.
5. Allan Davis (AUS/Discovery Channel) m.t.
6. Danilo Napolitano (ITA/Lampre) m.t.
7. Robbie McEwen (AUS/Predictor-Lotto) m.t.
8. David Kopp (ALE/Gerolsteiner) m.t.
9. René Haselbacher (AUT/Astaná) m.t.
10. Thor Hushovd (NOR/Credit Agricole) m.t.
Clasificación general: 1. Andreas Kloeden (ALE/Astaná) 28:31:26.
2. Kim Kirchen (LUX/T-Mobile) a 4"
3. Alexandre Vinokourov (KAZ/Astaná) a 13"
4. Stefan Schumacher (Ale/Gerolsteiner) a 23"
5. Janez Brajkovic (SLO/Discovery Channel) a 31"
6. Jens Voigt (ALE/CSC) a 34"
7. Vasil Kiryienka (BLR/Tinkoff) a 55"
8. Evgeni Petrov (RUS/Tinkoff) a 59"
9. Michele Scarponi (ITA/Acqua e Sapone) a 1'00"
10. Michael Boogerd (HOL/Rabobank) a 1'12".