Australijczyk Matthew Harley Goss (HTC-HighRoad) po finiszu z 8-osobowej grupy został zwycięzcą 102. Mediolan-San Remo. Drugie miejsce zajął Szwajcar Fabian Cancellara (Leopard-Trek), natomiast trzecie Belg Philippe Gilbert (Omega Pharma-Lotto).
Po starcie ze słonecznej stolicy Lombardii na 12 km do boju ruszyli Alessandro De Marchi (Androni), Nico Sijmens (Cofidis), Takashi Miyazawa (Farnese) i Mikhail Ignatiev (Katusha). Czwórka wypracowała ponad 13 minut przewagi. Po pokonaniu pierwszej przeszkody, przełęczy Turchino (532 m; 142,3 km) różnica spadła do 7:08.
Na dojeździe do pierwszego z pięciu podjazdów na ostatnich 95 kilometrach, Le Mànie (318 m; 204 km), akurat zaczęło kropić. Doszło do pierwszej dużej krasy, po której wycofał się Sébastien Rosseler (RadioShack). W zamieszaniu ucierpiał ubiegłoroczny zwycięzca Oscar Freire (Rabobank), który musiał gonić główną grupę. Z przodu utrzymywali się De Marchi i Ignatiev, ale pierwsza część peletonu traciła zaledwie półtorej minuty.
76 km przed metą dwójka została doścignięta. Około 120-osobowa grupa z Freire, Thorem Hushovdem (Garmin), Markiem Cavendishem (HTC) i Tylerem Farrarem (Garmin) traciła w tym momencie ponad 2 minuty. W 50-osobowej pierwszej grupie pracowały zespoły BMC, Quick Step, Katusha, Omega Pharma i Leopard.
Pomimo pogoni strata malała powoli, po osiągnięciu Capo Berta (130 m, 258,4 km) wynosiła 1:10. Szansa doścignięcia czołówki zbliżała się do zera.
Wyścig dojechał do Cipressy (240 m; dł. 5,6 km; 4,1%, max 9%; 275,9 km), gdzie z drugiej grupy zaatakował Michele Scarponi. Kolarz Lampre zbliżył się na 16 sekund, a następnie na zjeździe dojechał do pierwszej grupy, stanowiąc wsparcie dla Alessandro Petacchiego.
W tym samym czasie po kilku skokach utworzyła się czołówka w składzie Greg Van Avermaet (BMC), Steve Chainel (FdJ), Yohan Offredo (FdJ) i Stuart O’Grady (Leopard Trek), która Poggio (162 m; dł. 3,7 km; 3,7%, max 8%; 291,8 km) osiągnęła z przewagą 30 sekund.
Z czwórki zaatakował Van Avermaet, natomiast za jego plecami do przodu ruszył Vinzento Nibali (Liquigas). Belg kręte zjazdy z Poggio rozpoczął z przewagą 10 sekund.
Niespełna 3 km przed metą do kolarza BMC dojechało 9 rywali. Kontrował Offredo, następnie Gilbert i Nibali, ale nic z tego nie wyszło. Finisz na ostatnich metrach pierwszy rozpoczął Scraponi, którego łatwo minęli Goss, Gilbert, Cancellara i Ballan.
1 Matthew Harley Goss (Aus) HTC-Highroad 6:51:10 2 Fabian Cancellara (Swi) Leopard Trek 3 Philippe Gilbert (Bel) Omega Pharma-Lotto 4 Alessandro Ballan (Ita) BMC Racing Team 5 Filippo Pozzato (Ita) Katusha Team 6 Michele Scarponi (Ita) Lampre - ISD 7 Yoann Offredo (Fra) FDJ 8 Vincenzo Nibali (Ita) Liquigas-Cannondale 00:03 9 Greg Van Avermaet (Bel) BMC Racing Team 00:10 10 Stuart O'Grady (Aus) Leopard Trek 00:12 11 Francisco José Ventoso Alberdi (Spa) Movistar Team 00:27 12 Alessandro Petacchi (Ita) Lampre - ISD 13 Daniele Bennati (Ita) Leopard Trek 14 Jose Joaquin Rojas Gil (Spa) Movistar Team 15 Marco Marcato (Ita) Vacansoleil-DCM Pro Cycling Team 16 Dominique Rollin (Can) FDJ 17 Peter Sagan (Svk) Liquigas-Cannondale 18 Heinrich Haussler (Aus) Team Garmin-Cervelo 19 Alessandro Bertolini (Ita) Androni Giocattoli 20 Sylvain Chavanel (Fra) Quickstep Cycling Team 21 Matteo Tosatto (Ita) Saxo Bank Sungard 22 George Hincapie (USA) BMC Racing Team 23 Yaroslav Popovych (Ukr) Team RadioShack 24 Francesco Failli (Ita) Farnese Vini - Neri Sottoli 25 Linus Gerdemann (Ger) Leopard Trek 00:32 26 Pablo Lastras Garcia (Spa) Movistar Team 00:33 27 Vladimir Gusev (Rus) Katusha Team 01:06 28 Tom Boonen (Bel) Quickstep Cycling Team 01:12 29 Sacha Modolo (Ita) Colnago - CSF Inox 30 Edvald Boasson Hagen (Nor) Sky Procycling 01:44 31 Steve Chainel (Fra) FDJ 01:47 32 Egoi Martinez De Esteban (Spa) Euskaltel-Euskadi 01:55 33 André Greipel (Ger) Omega Pharma-Lotto 03:59 34 Jurgen Roelandts (Bel) Omega Pharma-Lotto 35 Andreas Klier (Ger) Team Garmin-Cervelo 05:14 36 Robbie McEwen (Aus) Team RadioShack 05:23 37 Aleksejs Saramotins (Lat) Cofidis, Le Credit En Ligne 38 Niki Terpstra (Ned) Quickstep Cycling Team 39 Leonardo Fabio Duque (Col) Cofidis, Le Credit En Ligne 40 Yauheni Hutarovich (Blr) FDJ 41 Lloyd Mondory (Fra) AG2R La Mondiale 42 Romain Feillu (Fra) Vacansoleil-DCM Pro Cycling Team 43 Fabian Wegmann (Ger) Leopard Trek 44 Bradley Wiggins (GBr) Sky Procycling 45 Ignatas Konovalovas (Ltu) Movistar Team 46 Tyler Farrar (USA) Team Garmin-Cervelo 47 Bernhard Eisel (Aut) HTC-Highroad 48 Marcus Burghardt (Ger) BMC Racing Team 49 Geoffroy Lequatre (Fra) Team RadioShack 50 Mauro Finetto (Ita) Liquigas-Cannondale 51 Alexandr Kolobnev (Rus) Katusha Team 52 Mark Cavendish (GBr) HTC-Highroad 53 Baden Cooke (Aus) Saxo Bank Sungard 54 Grega Bole (Slo) Lampre - ISD 55 Manuel Belletti (Ita) Colnago - CSF Inox 56 Danilo Hondo (Ger) Lampre - ISD 57 Juan Jose Oroz Ugalde (Spa) Euskaltel-Euskadi 58 Marco Frapporti (Ita) Colnago - CSF Inox 59 Lars Ytting Bak (Den) HTC-Highroad 60 Geraint Thomas (GBr) Sky Procycling 61 Matthieu Ladagnous (Fra) FDJ 62 Massimo Codol (Ita) Acqua & Sapone 63 Damiano Caruso (Ita) Liquigas-Cannondale 64 Karsten Kroon (Ned) BMC Racing Team 65 Danilo Wyss (Swi) BMC Racing Team 66 Simon Clarke (Aus) Pro Team Astana 67 Danilo Napolitano (Ita) Acqua & Sapone 68 David Gutierrez Gutierrez (Spa) Geox-TMC 69 Valerio Agnoli (Ita) Liquigas-Cannondale 70 Nick Nuyens (Bel) Saxo Bank Sungard 71 Tiziano Dall'Antonia (Ita) Liquigas-Cannondale 72 Manuele Mori (Ita) Lampre - ISD 73 Anders Lund (Den) Leopard Trek 74 Marzio Bruseghin (Ita) Movistar Team 75 Thomas De Gendt (Bel) Vacansoleil-DCM Pro Cycling Team 76 Juan Antonio Flecha Giannoni (Spa) Sky Procycling 77 Björn Leukemans (Bel) Vacansoleil-DCM Pro Cycling Team 78 Gianni Meersman (Bel) FDJ 79 Arkaitz Duran Aroca (Spa) Geox-TMC 80 Benoît Vaugrenard (Fra) FDJ 81 Adam Hansen (Aus) Omega Pharma-Lotto 82 Giovanni Visconti (Ita) Farnese Vini - Neri Sottoli 83 Michael Rogers (Aus) Sky Procycling 84 Jérôme Pineau (Fra) Quickstep Cycling Team 85 Jussi Veikkanen (Fin) Omega Pharma-Lotto 86 Thomas Lövkvist (Swe) Sky Procycling 87 Angel Vicioso Arcos (Spa) Androni Giocattoli 88 Angel Madrazo Ruiz (Spa) Movistar Team 89 Francesco Reda (Ita) Quickstep Cycling Team 90 Enrico Gasparotto (Ita) Pro Team Astana 91 Andriy Grivko (Ukr) Pro Team Astana 92 Roberto Ferrari (Ita) Androni Giocattoli 93 Simone Stortoni (Ita) Colnago - CSF Inox 94 Oscar Freire Gomez (Spa) Rabobank Cycling Team 95 Rinaldo Nocentini (Ita) AG2R La Mondiale 96 Dmitriy Muravyev (Kaz) Team RadioShack 97 Alberto Ongarato (Ita) Vacansoleil-DCM Pro Cycling Team 98 Robert Wagner (Ger) Leopard Trek 99 Matthew Wilson (Aus) Team Garmin-Cervelo 100 Sebastian Langeveld (Ned) Rabobank Cycling Team 05:30 101 Domenico Pozzovivo (Ita) Colnago - CSF Inox 102 Ian Stannard (GBr) Sky Procycling 06:10 103 Maarten Wynants (Bel) Rabobank Cycling Team 104 Michael Schär (Swi) BMC Racing Team 105 Ivan Santaromita (Ita) BMC Racing Team 106 Luca Barla (Ita) Androni Giocattoli 107 Michael Matthews (Aus) Rabobank Cycling Team 08:29 108 Vicente Reynes Mimo (Spa) Omega Pharma-Lotto 09:32 109 Michael Albasini (Swi) HTC-Highroad 110 Marcel Sieberg (Ger) Omega Pharma-Lotto 111 Grégory Rast (Swi) Team RadioShack 112 Lars Boom (Ned) Rabobank Cycling Team 113 Mark Renshaw (Aus) HTC-Highroad 114 Mirco Lorenzetto (Ita) Pro Team Astana 115 Assan Bazayev (Kaz) Pro Team Astana 116 Davide Malacarne (Ita) Quickstep Cycling Team 117 William Bonnet (Fra) FDJ 118 Biel Kadri (Fra) AG2R La Mondiale 119 Mirko Selvaggi (Ita) Vacansoleil-DCM Pro Cycling Team 120 Borut Bozic (Slo) Vacansoleil-DCM Pro Cycling Team 121 Alessandro Donati (Ita) Acqua & Sapone 122 Luca Paolini (Ita) Katusha Team 123 Johan Van Summeren (Bel) Team Garmin-Cervelo 124 Leif Hoste (Bel) Katusha Team 125 Stefano Pirazzi (Ita) Colnago - CSF Inox 126 Kurt-Asle Arvesen (Nor) Sky Procycling 127 Thor Hushovd (Nor) Team Garmin-Cervelo 128 Juan José Haedo (Arg) Saxo Bank Sungard 129 Alessandro De Marchi (Ita) Androni Giocattoli 09:38 130 Ivan Velasco Murillo (Spa) Euskaltel-Euskadi 15:51 131 Jonathan Castroviejo Nicolas (Spa) Euskaltel-Euskadi 132 Amets Txurruka (Spa) Euskaltel-Euskadi 133 Romain Zingle (Bel) Cofidis, Le Credit En Ligne 134 Takashi Miyazawa (Jpn) Farnese Vini - Neri Sottoli 135 Andrey Amador Bakkazakova (CRc) Movistar Team 136 Kevin Ista (Bel) Cofidis, Le Credit En Ligne 137 Kevin Van Impe (Bel) Quickstep Cycling Team 138 Maarten Tjallingii (Ned) Rabobank Cycling Team 18:25 139 Jens Mouris (Ned) Vacansoleil-DCM Pro Cycling Team 140 Diego Ulissi (Ita) Lampre - ISD 141 Tomas Vaitkus (Ltu) Pro Team Astana 142 Gustav Larsson (Swe) Saxo Bank Sungard 143 Yuriy Krivtsov (Fra) AG2R La Mondiale 144 Thomas Leezer (Ned) Rabobank Cycling Team 145 Daniele Ratto (Ita) Geox-TMC 146 Allan Davis (Aus) Pro Team Astana 147 Roger Hammond (GBr) Team Garmin-Cervelo 148 Sébastien Hinault (Fra) AG2R La Mondiale 149 Wouter Weylandt (Bel) Leopard Trek 150 Nico Sijmens (Bel) Cofidis, Le Credit En Ligne 151 Jens Keukeleire (Bel) Cofidis, Le Credit En Ligne 152 Javier Francisco Aramendia Lorente (Spa) Euskaltel-Euskadi 153 Daniel Sesma (Spa) Euskaltel-Euskadi 154 Michael Morkov (Den) Saxo Bank Sungard 155 Anthony Ravard (Fra) AG2R La Mondiale 156 Kasper Klostergaard Larsen (Den) Saxo Bank Sungard DNF Rick Flens (Ned) Rabobank Cycling Team DNF Paolo Ciavatta (Ita) Acqua & Sapone DNF Ruggero Marzoli (Ita) Acqua & Sapone DNF Claudio Corioni (Ita) Acqua & Sapone DNF Simone Masciarelli (Ita) Acqua & Sapone DNF Fabio Taborre (Ita) Acqua & Sapone DNF Martin Elmiger (Swi) AG2R La Mondiale DNF Giairo Ermeti (Ita) Androni Giocattoli DNF Luca Solari (Ita) Androni Giocattoli DNF Antonio Santoro (Ita) Androni Giocattoli DNF Andrea Pasqualon (Ita) Colnago - CSF Inox DNF Gianluca Brambilla (Ita) Colnago - CSF Inox DNF Tristan Valentin (Fra) Cofidis, Le Credit En Ligne DNF Jon Izaguirre Insausti (Spa) Euskaltel-Euskadi DNF Oscar Gatto (Ita) Farnese Vini - Neri Sottoli DNF Leonardo Giordani (Ita) Farnese Vini - Neri Sottoli DNF Andrea Noe (Ita) Farnese Vini - Neri Sottoli DNF Davide Ricci Bitti (Ita) Farnese Vini - Neri Sottoli DNF Diego Caccia (Ita) Farnese Vini - Neri Sottoli DNF Matthias Brandle (Aut) Geox-TMC DNF David Blanco Rodriguez (Spa) Geox-TMC DNF Fabio Felline (Ita) Geox-TMC DNF Marko Kump (Slo) Geox-TMC DNF Matteo Pelucchi (Ita) Geox-TMC DNF Bert Grabsch (Ger) HTC-Highroad DNF Peter Velits (Svk) HTC-Highroad DNF Mikhail Ignatyev (Rus) Katusha Team DNF Aliaksandr Kuschynski (Blr) Katusha Team DNF Vladimir Isaichev (Rus) Katusha Team DNF Francesco Gavazzi (Ita) Lampre - ISD DNF Matteo Bono (Ita) Lampre - ISD DNF Kristijan Koren (Slo) Liquigas-Cannondale DNF Alan Marangoni (Ita) Liquigas-Cannondale DNF Vasili Kiryienka (Blr) Movistar Team DNF Sebastian Lang (Ger) Omega Pharma-Lotto DNF Maxim Iglinsky (Kaz) Pro Team Astana DNF Marco Bandiera (Ita) Quickstep Cycling Team DNF David Tanner (Aus) Saxo Bank Sungard DNF Ramunas Navardauskas (Ltu) Team Garmin-Cervelo DNF Robert Hunter (RSA) Team RadioShack DNF Manuel Antonio Leal Cardoso (Por) Team RadioShack DNF Sébastien Rosseler (Bel) Team RadioShack