Kristoff okazał się zdecydowanie najsilniejszy na finiszu, wykorzystując wcześniejszą znakomitą pracę Luki Paoliniego, który na ostatnich dwóch kilometrach kasował ataki i wyprowadził swojego lidera na pierwsze miejsce. Bezpośrednia walka o zwycięstwo rozpoczęła się na około 150 metrów przed metą, kiedy to Mark Cavendish (Omega Pharma-Quick Step) rozpoczął swój finisz zza pleców rywali. Brytyjczyk, jeden z głównych faworytów wyścigu, wyszedł na prowadzenie na 75 metrów przed metą, ale gdy jemu zabrakło sił, dokładnie w tym samym momencie do przodu ruszył Kristoff, atakując zza pleców Saszy Modulo (Lampre-Merida). Norweg zdecydowanie ruszył środkiem jezdni i zyskał kilkumetrową przewagę nad finiszującymi Fabianem Cancellarą (Trek Factory Racing) i Benem Swiftem (Team Sky).
200 kolarzy z 25 ekip i 36 różnych krajów wystartowało o 10.05 z Mediolanu na trasę 105. wyścigu Milan-Sanremo. Kolarze ścigali się przy ciągle padającym deszczu, choć pogoda była znacznie lepsza niż ta, która towarzyszyła im rok temu.
Już po pięciu kilometrach rozpoczęły się pierwsze ataki, po których szybko uformowała się ucieczka dnia, którą stanowiła siódemka kolarzy. Antonio Parrinello (Androni Giocattoli), Nicola Boem (Bardiani CSF), Maarten Tjallingii (Belkin), Nathan Haas (Garmin), Matteo Bono (Lampre-Merida), Jan Barta (NetApp Endura), Marc Demaar (Unitedhealthcare) po 24 kilometrach jazdy mieli już cztery minuty przewagi nad zasadniczą grupą, która przygotowana na taki obrót spraw, nie zamierzała gonić uciekinierów. Przed kolarzami było jeszcze pond 250 kilometrów ścigania, toteż faworyci i ich ekipy oszczędzały jeszcze siły.
Dzięki temu przewaga ucieczki szybko rosła i na 130. kilometrze, w miejscowości Rossiglione, różnica pomiędzy dwiema grupami wynosiła 10.30 i było to najwięcej, na ile pozwolił uciekinierom peleton. Kolarze ekipy Cannondale, z Maciejem Bodnarem, rozpoczęli pracę na czele zasadniczej grupy, narzucając mocniejsze tempo i odrabiając straty. W Celle Ligure, na 178km, przewaga stopniała do 7.50 i wciąż spadała. Ucieczka, która pokonała już Passo del Turchino, uszczupliła się, bo najpierw tempa nie wytrzymał Boem, a po następnych kilkudziesięciu kilometrach odpadł Haas. Na 65 kilometrów przed metą odpadł także Parinello. Na nieco ponad 50 kilometrów przed metą rozpoczynał się pierwszy kluczowy odcinek trasy. Kolarze pokonywali wtedy trzy następujące po sobie podjazdy – Capo Mele, Capo Cervo i Capo Berta. W peletonie rządy przejęły ekipy Orica GreenEdge, Kariusza, Cannondale i Omega Pharma-Quick Step, chroniąc swoich liderów przed kraksami.
Tymczasem meldunki z ostatnich kilometrów nie były optymistyczne. Na Poggio padał deszcz ze śniegiem, a droga spływała wodą, podobnie było na mecie w Sanremo. Organizatorzy zaprzęgli ciężki sprzęt, by wypompować wodę z ostatniej prostej i by umożliwić kolarzom bezpieczny finisz.
Gdy peleton pokonywał Capo Mela z wyścigu wycofał się Michał Kwiatkowski (Omega Pharma-Quick Step). U podnóża Capo Berta peleton tracił 4 minuty do prowadzącej już tylko trójki, ponieważ na podjeździe odpadł Barta, ale podjeździe zasadnicza grupa szybko zniwelowała straty. Im mniej kilometrów pozostało do mety, tym mniej liczny był peleton. U podnóża wspinaczki pod Cipressa peleton tracił już tylko dwie minut do dwójki De Maar i Tjalingi.
Tempo w grupie zasadniczej znacznie wzrosło, a ekipy faworytów starały się za wszelką cenę utrzymać na czele, unikając kłopotów. Na Cipressie na czele pracowali mocno kolarze Cannondale, ale nie powstrzymało to Vincenzo Nibalego (Astana) przed atakiem na ponad kilometr przed szczytem. Żaden z rywali nie zdecydował się gonić Włocha, pozostawiając pracę kolarzom Cannondale. Na szczycie Cipressy zwycięzca ubiegłorocznego Giro d’Italia tracił 13 sekund, natomiast peleton do Nibalego już prawie pół minuty. Włoch, który słynie z bardzo dobrych umiejętności zjazdowych na zjeździe dołączył do czołowej dwójki i błyskawicznie ich zostawił za plecami, mknąc dalej na zjeździe i nie oglądając się za siebie ani chwili i rozpoczął swoją czasówkę.
Na 17 kilometrów przed metą krótkiego ataku spróbował Fabian Cancellara (Trek Factory Racing), ale za Szwajcarem szybko ruszyli pozostali faworyci. Nibali tymczasem miał 15 kilometrów do mety i już 50 sekund przewagi nad grupą pościgową, w której byli m.in. Mark Cavendish (Omega Pharma-Quick Step), Peter Sagan (Cannondale) czy Andre Greipel (Lotto Belisol), wciąż liczący na sprinterski finisz.
U podnóża Poggio Nibali miał już tylko 15 sekund zapasu, a ekipy sprinterów coraz mocniej naciskały na pedały. Gdy na podjeździe peleton już doganiał kolarza Astany, na atak zdecydował się Gregory Rast (Trek Factory Racing). Dopiero po kilkuset metrach za Szwajcarem ruszył Enrico Battaglin (Bardiani CSF) i ta dwójka miała kilkadziesiąt sekund przewagi, ale peleton nie reagował jeszcze. Na 7km przed metą zaatakował Philippe Gilbert (BMC Racing), którego atak zakończył ucieczkę dwójki liderów, ale nie rozerwał grupy. Wciąż w grupie trzymali się Cavendish, Greipel i Sagan. Tuż przed szczytem poprawił Lars Peter Nordhaug (Belkin), za którym ruszył Greg Van Avermaet (BMC Racing)
Przewaga tej dwójki na zjeździe była minimalna i szybko na ich koło siedli pozostali kolarze z grupy. Przed końcem zjazdu jeszcze raz podkręcił Van Avermaet, a potem Nordhaug, a na 2,5km przed metą zaatakował Sonny Colbrelli (Bardiani CSF). Po niespełna kilometrze akcja Włocha została skasowana przez kolarzy Team Sky. W tym samym momencie na koniec czołowej grupki doszedł Greipel, ale Niemiec nie miał już sił, ani kolegów do pomocy, by włączyć się w walkę na finiszu. Jeszcze przed ostatnim kilometrem na czoło grupy wyszedł Luca Paolini (Katiusza), wyprowadzając Alexandra Kristoffa na drugie miejsce. Włoch doprowadził swojego lidera bezpiecznie na kilkaset metrów przed metą, kiedy to sprinterzy rozpoczęli już walkę o pierwsze miejsce.
Z okolic 10. miejsca do przodu przesuwał się Cavendish i na około 200 metrów przed metą rozpoczął finisz. Brytyjczyk ruszył mocno, wychodząc na prowadzenie, ale na 75 metrów przed kreską zabrakło mu sił i nie mógł już walczyć o zwycięstwo. Wtedy też zza pleców Modolo wyskoczył Kristoff i zyskując zdecydowaną przewagę finiszował kilka metrów przed wściekłym Cancellarą i Swiftem.
Wyniki:
- 1 Alexander Kristoff (Nor) Team Katusha 6:55:56
- 2 Fabian Cancellara (Swi) Trek Factory Racing
- 3 Ben Swift (GBr) Team Sky
- 4 Juan Jose Lobato Del Valle (Spa) Movistar Team
- 5 Mark Cavendish (GBr) Omega Pharma - Quick-Step Cycling Team
- 6 Sonny Colbrelli (Ita) Bardiani CSF
- 7 Zdenek Stybar (Cze) Omega Pharma - Quick-Step Cycling Team
- 8 Sacha Modolo (Ita) Lampre-Merida
- 9 Gerald Ciolek (Ger) MTN - Qhubeka
- 10 Peter Sagan (Svk) Cannondale
- 11 Ramunas Navardauskas (Ltu) Garmin Sharp
- 12 Salvatore Puccio (Ita) Team Sky
- 13 Philippe Gilbert (Bel) BMC Racing Team
- 14 Sebastian Langeveld (Ned) Garmin Sharp
- 15 Lars Petter Nordhaug (Nor) Belkin-Pro Cycling Team
- 16 Yoann Offredo (Fra) Fdj.fr
- 17 Francisco José Ventoso Alberdi (Spa) Movistar Team
- 18 Daniele Bennati (Ita) Tinkoff-Saxo
- 19 Grégory Rast (Swi) Trek Factory Racing
- 20 Fabio Felline (Ita) Trek Factory Racing
- 21 Sylvain Chavanel (Fra) IAM Cycling
- 22 Davide Cimolai (Ita) Lampre-Merida
- 23 Jurgen Roelandts (Bel) Lotto Belisol
- 24 André Greipel (Ger) Lotto Belisol
- 25 Greg Van Avermaet (Bel) BMC Racing Team
- 26 Alexandre Pichot (Fra) Team Europcar 0:00:06
- 27 Fabian Wegmann (Ger) Garmin Sharp 0:00:07
- 28 Davide Appollonio (Ita) AG2R La Mondiale 0:00:34
- 29 Edvald Boasson Hagen (Nor) Team Sky
- 30 Filippo Pozzato (Ita) Lampre-Merida 0:00:40
- 31 Thomas Leezer (Ned) Belkin-Pro Cycling Team 0:00:54
- 32 Nicki Sörensen (Den) Tinkoff-Saxo
- 33 Luca Paolini (Ita) Team Katusha 0:01:12
- 34 Arnaud Demare (Fra) Fdj.fr 0:01:22
- 35 Tony Gallopin (Fra) Lotto Belisol
- 36 Mauro Finetto (Ita) Yellow Fluo
- 37 Bauke Mollema (Ned) Belkin-Pro Cycling Team 0:01:33
- 38 Martijn Maaskant (Ned) Unitedhealthcare Professional Cycling Team 0:01:35
- 39 John Degenkolb (Ger) Team Giant-Shimano 0:01:54
- 40 Lloyd Mondory (Fra) AG2R La Mondiale 0:02:09
- 41 Maarten Tjallingii (Ned) Belkin-Pro Cycling Team 0:02:38
- 42 Adam Hansen (Aus) Lotto Belisol
- 43 Enrico Battaglin (Ita) Bardiani CSF 0:03:14
- 44 Vincenzo Nibali (Ita) Astana Pro Team 0:03:15
- 45 Jan Bakelants (Bel) Omega Pharma - Quick-Step Cycling Team
- 46 Oscar Gatto (Ita) Cannondale
- 47 Rinaldo Nocentini (Ita) AG2R La Mondiale 0:03:22
- 48 Manuel Quinziato (Ita) BMC Racing Team 0:03:36
- 49 Daryl Impey (RSA) Orica GreenEdge 0:03:50
- 50 Kristian Sbaragli (Ita) MTN - Qhubeka 0:04:10
- 51 Andriy Grivko (Ukr) Astana Pro Team
- 52 Yaroslav Popovych (Ukr) Trek Factory Racing 0:05:08
- 53 Marc Demaar (Ned) Unitedhealthcare Professional Cycling Team
- 54 Simon Geschke (Ger) Team Giant-Shimano
- 55 Jack Bauer (NZl) Garmin Sharp 0:05:23
- 56 Thor Hushovd (Nor) BMC Racing Team 0:05:29
- 57 Robert Förster (Ger) Unitedhealthcare Professional Cycling Team
- 58 Dayer Uberney Quintana Rojas (Col) Movistar Team
- 59 Francesco Chicchi (Ita) Yellow Fluo
- 60 Mickael Delage (Fra) Fdj.fr 0:05:34
- 61 Marco Marcato (Ita) Cannondale 0:06:03
- 62 Alessandro De Marchi (Ita) Cannondale 0:06:06
- 63 Franco Pellizotti (Ita) Androni Giocattoli 0:06:20
- 64 Manuel Belletti (Ita) Androni Giocattoli 0:06:23
- 65 Bernhard Eisel (Aut) Team Sky
- 66 Diego Rosa (Ita) Androni Giocattoli
- 67 Cesare Benedetti (Ita) Team Netapp - Endura
- 68 Heinrich Haussler (Aus) IAM Cycling
- 69 Nikolay Trusov (Rus) Tinkoff-Saxo
- 70 Hayden Roulston (NZl) Trek Factory Racing
- 71 Nicolas Roche (Irl) Tinkoff-Saxo
- 72 Sébastien Hinault (Fra) IAM Cycling 0:07:49
- 73 Reinardt Janse Van Rensburg (RSA) Team Giant-Shimano
- 74 Borut Bozic (Slo) Astana Pro Team 0:07:51
- 75 Aliaksandr Kuchynski (Blr) Team Katusha 0:10:04
- 76 Pavel Brutt (Rus) Team Katusha
- 77 Kiel Reijnen (USA) Unitedhealthcare Professional Cycling Team
- 78 Michael Matthews (Aus) Orica GreenEdge
- 79 Klaas Lodewyck (Bel) BMC Racing Team
- 80 Koen De Kort (Ned) Team Giant-Shimano
- 81 Robert Wagner (Ger) Belkin-Pro Cycling Team
- 82 Johan Le Bon (Fra) Fdj.fr
- 83 Maximiliano Ariel Richeze (Arg) Lampre-Merida
- 84 Jos Van Emden (Ned) Belkin-Pro Cycling Team
- 85 Matthieu Ladagnous (Fra) Fdj.fr
- 86 Dries Devenyns (Bel) Team Giant-Shimano
- 87 Bob Jungels (Lux) Trek Factory Racing
- 88 Jaco Venter (RSA) MTN - Qhubeka
- 89 Svein Tuft (Can) Orica GreenEdge
- 90 Roy Curvers (Ned) Team Giant-Shimano 0:11:42
- 91 Jan Barta (Cze) Team Netapp - Endura
- 92 Marcel Sieberg (Ger) Lotto Belisol
- 93 Roger Kluge (Ger) IAM Cycling
- 94 Luke Durbridge (Aus) Orica GreenEdge
- 95 Yukiya Arashiro (Jpn) Team Europcar
- 96 Alessandro Bazzana (Ita) Unitedhealthcare Professional Cycling Team
- 97 Marco Coledan (Ita) Bardiani CSF
- 98 Johan Van Summeren (Bel) Garmin Sharp
- 99 Karsten Kroon (Ned) Tinkoff-Saxo
- 100 Simon Clarke (Aus) Orica GreenEdge
- 101 David Boucher (Fra) Fdj.fr 0:14:33
- 102 Bartosz Huzarski (Pol) Team Netapp - Endura
- 103 Sylvester Szmyd (Pol) Movistar Team
- 104 Merhawi Kudus Ghebremedhin (Eri) MTN - Qhubeka
- 105 Tom Jelte Slagter (Ned) Garmin Sharp 0:17:59
- 106 Kenny Robert Van Hummel (Ned) Androni Giocattoli
- 107 Christopher Juul Jensen (Den) Tinkoff-Saxo
- 108 Rick Flens (Ned) Belkin-Pro Cycling Team
- 109 Christopher Jones (USA) Unitedhealthcare Professional Cycling Team
- 110 Rafael Andriato (Bra) Yellow Fluo
- 111 Laurent Didier (Lux) Trek Factory Racing
- 112 Guillaume Bonnafond (Fra) AG2R La Mondiale
- 113 Eugenio Alafaci (Ita) Trek Factory Racing
- 114 Hugo Houle (Can) AG2R La Mondiale
- DNF Ignatas Konovalovas (Ltu) MTN - Qhubeka
- DNF Louis Meintjes (RSA) MTN - Qhubeka
- DNF Daniel Teklehaimanot (Eri) MTN - Qhubeka
- DNF Jay Robert Thomson (RSA) MTN - Qhubeka
- DNF Steve Chainel (Fra) AG2R La Mondiale
- DNF Patrick Gretsch (Ger) AG2R La Mondiale
- DNF Matteo Montaguti (Ita) AG2R La Mondiale
- DNF Omar Bertazzo (Ita) Androni Giocattoli
- DNF Marco Frapporti (Ita) Androni Giocattoli
- DNF Antonio Parrinello (Ita) Androni Giocattoli
- DNF Gianfranco Zilioli (Ita) Androni Giocattoli
- DNF Enrico Gasparotto (Ita) Astana Pro Team
- DNF Francesco Gavazzi (Ita) Astana Pro Team
- DNF Andrea Guardini (Ita) Astana Pro Team
- DNF Maxim Iglinsky (Kaz) Astana Pro Team
- DNF Alexey Lutsenko (Kaz) Astana Pro Team
- DNF Enrico Barbin (Ita) Bardiani CSF
- DNF Nicola Boem (Ita) Bardiani CSF
- DNF Marco Canola (Ita) Bardiani CSF
- DNF Filippo Fortin (Ita) Bardiani CSF
- DNF Stefano Pirazzi (Ita) Bardiani CSF
- DNF Jonathan Hivert (Fra) Belkin-Pro Cycling Team
- DNF Michael Schär (Swi) BMC Racing Team
- DNF Peter Velits (Svk) BMC Racing Team
- DNF Danilo Wyss (Swi) BMC Racing Team
- DNF Maciej Bodnar (Pol) Cannondale
- DNF Damiano Caruso (Ita) Cannondale
- DNF Alan Marangoni (Ita) Cannondale
- DNF Paolo Longo Borghini (Ita) Cannondale
- DNF William Bonnet (Fra) Fdj.fr
- DNF Arthur Vichot (Fra) Fdj.fr
- DNF Nathan Haas (Aus) Garmin Sharp
- DNF David Millar (GBr) Garmin Sharp
- DNF Stefan Denifl (Aut) IAM Cycling
- DNF Martin Elmiger (Swi) IAM Cycling
- DNF Matteo Pelucchi (Ita) IAM Cycling
- DNF Thomas Lövkvist (Swe) IAM Cycling
- DNF Diego Ulissi (Ita) Lampre-Merida
- DNF Matteo Bono (Ita) Lampre-Merida
- DNF Manuele Mori (Ita) Lampre-Merida
- DNF Luca Wackermann (Ita) Lampre-Merida
- DNF Lars Ytting Bak (Den) Lotto Belisol
- DNF Pim Ligthart (Ned) Lotto Belisol
- DNF Jelle Vanendert (Bel) Lotto Belisol
- DNF Andrey Amador Bakkazakova (CRc) Movistar Team
- DNF Jose Joaquin Rojas Gil (Spa) Movistar Team
- DNF Enrique Sanz (Spa) Movistar Team
- DNF Jasha Sütterlin (Ger) Movistar Team
- DNF Iljo Keisse (Bel) Omega Pharma - Quick-Step Cycling Team
- DNF Michał Kwiatkowski (Pol) Omega Pharma - Quick-Step Cycling Team
- DNF Alessandro Petacchi (Ita) Omega Pharma - Quick-Step Cycling Team
- DNF Mark Renshaw (Aus) Omega Pharma - Quick-Step Cycling Team
- DNF Matteo Trentin (Ita) Omega Pharma - Quick-Step Cycling Team
- DNF Brett Lancaster (Aus) Orica GreenEdge
- DNF Mathew Hayman (Aus) Orica GreenEdge
- DNF Jens Keukeleire (Bel) Orica GreenEdge
- DNF Bryan Coquard (Fra) Team Europcar
- DNF Jerome Cousin (Fra) Team Europcar
- DNF Tony Hurel (Fra) Team Europcar
- DNF Vincent Jerome (Fra) Team Europcar
- DNF Bryan Naulleau (Fra) Team Europcar
- DNF Bjorn Thurau (Ger) Team Europcar
- DNF Tom Stamsnijder (Ned) Team Giant-Shimano
- DNF Albert Timmer (Ned) Team Giant-Shimano
- DNF Vladimir Gusev (Rus) Team Katusha
- DNF Alexandr Kolobnev (Rus) Team Katusha
- DNF Gatis Smukulis (Lat) Team Katusha
- DNF Angel Vicioso Arcos (Spa) Team Katusha
- DNF Iker Camano Ortuzar (Spa) Team Netapp - Endura
- DNF David De La Cruz Melgarejo (Spa) Team Netapp - Endura
- DNF Zakkari Dempster (Aus) Team Netapp - Endura
- DNF Erick Rowsell (GBr) Team Netapp - Endura
- DNF Paul Voss (Ger) Team Netapp - Endura
- DNF Dario Cataldo (Ita) Team Sky
- DNF Christian Knees (Ger) Team Sky
- DNF Gabriel Rasch (Nor) Team Sky
- DNF Geraint Thomas (GBr) Team Sky
- DNF Roman Kreuziger (Cze) Tinkoff-Saxo
- DNF Michael Morkov (Den) Tinkoff-Saxo
- DNF Lucas Euser (USA) Unitedhealthcare Professional Cycling Team
- DNF Davide Frattini (Ita) Unitedhealthcare Professional Cycling Team
- DNF Daniele Colli (Ita) Yellow Fluo
- DNF Francesco Failli (Ita) Yellow Fluo
- DNF Simone Ponzi (Ita) Yellow Fluo
- DNF Matteo Rabottini (Ita) Yellow Fluo
- DNF Fabio Taborre (Ita) Yellow Fluo