Zwycięzca minął metę samotnie, wyraźnie wyprzedzając ścigającego go na ostatnich kilometrach Włocha Danilo di Lukę. Piąte miejsce zajął Ricco, a Contador przyjechał w małej grupce, zajmując 12. miejsce i tracąc kilkadziesiąt sekund do najgroźniejszych rywali z klasyfikacji generalnej. Po 19. etapach, na dwa dni przed zakończeniem wyścigu w Mediolanie, Contador wyprzedza Ricco o cztery sekundy, a di Lukę o 21 sekund. Bardzo długi, górzysty etap, kończący się podjazdem do mety przebiegał w trudnych warunkach, w chłodzie i padającym deszczu. Przez większość dystansu tempo dyktowała siedmioosobowa czołówka, która w pewnym momencie uzyskała aż 22 minuty przewagi nad peletonem. Na ostatnich kilkudziesięciu kilometrach topniejąca główna grupa z faworytami mocno przyspieszyła, a zmęczeni uciekinierzy opadli z sił i w oczach tracili przewagę. Na czele zdołał się utrzymać tylko Kiryjenka, który odniósł pierwsze w karierze etapowe zwycięstwo w Giro (wcześniej dwukrotnie zajmował drugie miejsca na etapach w tegorocznym wyścigu). Zacięta walka o różową koszulkę dosłownie o sekundy toczyła się za plecami Białorusina. Imponującym atakiem popisał się di Luca, który zostawił najgroźniejszych rywali i samotnie wspinał się na ostatnie wzniesienie, wyprzedzając tuż przed metą bardzo zmęczonego uczestnika ucieczki, Rosjanina Aleksandra Jefimkina. Z grupy, w której jechał lider, kontratakował skutecznie Riccardo Ricco, zyskując cenne sekundy i zbliżając się do Contadora w klasyfikacji generalnej. Piątkowy etap nie przyniósł decydujących rozstrzygnięć, a wręcz przeciwnie, przyniósł zmniejszenie różnic w czołówce. Przed kolarzami jeszcze dwa etapy - sobotni, ponad 200-kilometrowy, prowadzący po górach i niedzielna jazda indywidualna na dystansie 28,5 km. Wyniki 19. etapu (Legnano - Presolana - Monte Pora, 228 km): 1. Wasyl Kiryjenka (Białoruś/Tinkoff) 6:37.32 2. Danilo Di Luca (Włochy/LPR) strata 4.36 3. Aleksander Jefimkin (Rosja/Quick Step) 4.43 4. Steve Cummings (W.Brytania/Barloworld) 5.25 5. Riccardo Ricco (Włochy/Saunier Duval) 5.44 6. Emanuele Sella (Włochy/CSF Navigare) 6.21 7. Franco Pellizotti (Włochy/Liquisas) 8. Juergen Van den Broeck (Belgia/Silence-Lotto) 9. Marzio Bruseghin (Włochy/Lampre) 10. Denis Mienszow (Rosja/Rabobank) 11. Domenico Pozzovivo (Włochy/CSF Navigare) 12. Alberto Contador (Hiszpania/Astana) wszyscy ten sam czas .. 46. Sylwester Szmyd (Polska/Lampre) 28.05 Klasyfikacja generalna: 1. Alberto Contador (Hiszpania/Astana) 82:29.10 2. Riccardo Ricco (Włochy/Saunier Duval) strata 4 s 3. Danilo Di Luca (Włochy/LPR) 21 4. Marzio Bruseghin (Włochy/Lampre) 2.00 5. Franco Pellizotti (Włochy/Liquigas) 2.05 6. Denis Mienszow (Rosja/Rabobank) 2.47 7. Emanuele Sella (Włochy/CSF Navigare) 4.25 8. Juergen Van den Broeck (Belgia/Silence-Lotto) 4.26 9. Domenico Pozzovivo (Włochy/CSF Navigare) 5.25 10. Gilberto Simoni (Włochy/Saunier Duval) 7.18 .. 24. Sylwester Szmyd (Polska/Lampre) 37.02