12. etap stanowił ostatni dzień zmagań na wymagających podjazdach w Pirenejach. Zawodnicy do pokonania mieli dziś 195 km z Lannemezan do Plateau de Beille, do którego prowadził finałowy 15,8 km podjazd o średnim nachyleniu 7,9 %. Poza wzniesieniem kończącym etap kolarze wspinali się jeszcze na Col de Portet-d'Aspet, Col de la Core oraz Port de Lers. Etap posiadał szczególne znaczenie, gdyż zawodnicy jadąc przez Col de Portet-d'Aspet, mijali miejsce, w którym w 18 lipca 1995 roku śmiertelnemu wypadkowi uległ Fabio Casartelli.
Akcję na dzisiejszym etapie rozpoczęła 22-osobowa ucieczka, w składzie której zobaczyliśmy Michała Kwiatkowskiego. Poza mistrzem świata do odjazdu zabrali się: Lieuwe Westra i Jakob Fuglsang (obaj Astana), Matthieu Ladagnous, Jérémy Roy (obaj FDJ), Gorka Izagirre (Movistar), Romain Bardet, Mickael Cherel, Christophe Riblon (AG2R), Jan Barta (Bora-Argon 18), Bryan Coquard, Romain Sicard (Europcar), Kristjian Durasek (Lampre-Merida), Dani Navarro (Cofidis), Sylvain Chavanel, Jérôme Coppel (IAM), Joaquim Rodriguez (Katusha), Frédéric Brun, Anthony Delaplace (Bretagne-Séché), Louis Meintjes (MTN-Qhubeka), Georg Preidler (Giant-Alpecin) i Sep Vanmarcke (LottoNL-Jumbo).
Peleton zdecydowanie odpuścił harcowników, którzy na drugiej górskiej premii mieli już blisko 9 minut przewagi. Przed podjazdem do Port de Lers od ucieczki oderwali się Kwiatkowski, Vanmarcke oraz Preidler, którzy w takim składzie rozpoczęli przedostatnią wspinaczkę, mając około 1,5 minuty przewagi nad kolejną grupką uciekinierów. Tempa podjazdu nie wytrzymał kolarz z ekipy Giant, z kolei goniąca duet Kwiatkowski - Vanmarcke grupa zniwelowała prawie całą stratę. Ostatni tego dnia zjazd natomiast sprzyjał Kwiatkowskiemu i jego towarzyszowi - duet ponownie zyskał tam blisko 2 minuty nad asekuracyjnie zjeżdżającymi Rodriguezem, Bardetem, Fuglsangiem, Izagirre, Cherelem i Sicardem. Upadek zaliczył nawet Meintjes, ale pozbierał się i wrócił do reszty składu ucieczki.
Czołowy duet utrzymał przewagę do ostatniego podjazdu. Tam szybko odpadł Vanmarcke, z kolei słabnący Kwiatkowski nie poddawał się i robił co mógł, by jak najdłużej utrzymać się na prowadzeniu. Za nim jednak tempo zaczęli podkręcać zawodnicy lepiej czujący się w górach - Polaka gonili Rodriguez, Bardet i Fuglsang.
Z 3-osobowego pościgu jako pierwszy ruszył Purito, wyraźnie niezadowolony ze sposobu jazdy pozostałej dwójki. Hiszpan szybko odskoczył i dogonił Kwiatkowskiego na około 7 km przed metą (Polak dzięki heroicznej walce został wybrany najbardziej walecznym kolarzem etapu). Za zawodnikiem Katushy ruszył Fuglsang, lecz nie zdołał on już dogonić dzielnego Katalończyka. Ostatecznie po etapowe zwycięstwo sięgnął Joaquin Rodriguez, przed Fuglsangiem i Bardetem.
Osobny wyścig toczył się z kolei w grupie czołówki klasyfikacji generalnej. Na podjeździe pod Plateau de Beille mogliśmy oglądać festiwal ataków - próbował Contador, następnie Nibali, skakali Valverde i Quintana, ale wszystko to było tylko wodą na "młynek" Chrisa Froome'a, który wraz ze swoimi pomocnikami kontrolował przebieg sytuacji. Grupę faworytów w komplecie na metę przyprowadził Alejandro Valverde. Froome w generalce nadal ma 2 minuty i 52 sekundy przewagi nad drugim Van Garderenem oraz nieco ponad 3 minuty nad Quintaną.
Wyniki 12. etapu:
- 1 Joaquim Rodriguez (Spa) Team Katusha 5:40:14
- 2 Jakob Fuglsang (Den) Astana Pro Team 0:01:12
- 3 Romain Bardet (Fra) AG2R La Mondiale 0:01:49
- 4 Gorka Izagirre (Spa) Movistar Team 0:04:34
- 5 Louis Meintjes (RSA) MTN - Qhubeka 0:04:38
- 6 Jan Barta (Cze) Bora-Argon 18 0:05:47
- 7 Romain Sicard (Fra) Team Europcar 0:06:03
- 8 Mikael Cherel (Fra) AG2R La Mondiale 0:06:28
- 9 Alejandro Valverde (Spa) Movistar Team 0:06:46
- 10 Christopher Froome (GBr) Team Sky 0:06:47
Klasyfikacja generalna (Top 10):
- 1 Christopher Froome (GBr) Team Sky 46:50:32
- 2 Tejay Van Garderen (USA) BMC Racing Team 0:02:52
- 3 Nairo Quintana (Col) Movistar Team 0:03:09
- 4 Alejandro Valverde (Spa) Movistar Team 0:03:58
- 5 Geraint Thomas (GBr) Team Sky 0:04:03
- 6 Alberto Contador (Spa) Tinkoff-Saxo 0:04:04
- 7 Robert Gesink (Ned) Team LottoNL-Jumbo 0:05:32
- 8 Tony Gallopin (Fra) Lotto Soudal 0:07:32
- 9 Vincenzo Nibali (Ita) Astana Pro Team 0:07:47
- 10 Bauke Mollema (Ned) Trek Factory Racing 0:08:02