| 28-09 | DNF | | UCI World Championship Varese (CM) | 260.0km |
| | | Deutschland Tour (PT) |
| 14 | | Standings |
| 06-09 | 18 | 14 | Stage 8Bremen - Bremen | 34.0km |
| 30-08 | 11 | | Stage 1Kitzbühel - Hochfügen | 178.0km |
| 29-08 | 4 | 4 | PrologueKitzbühel - Kitzbühel | 3.0km |
| | | Rothaus Regio-Tour (2.1) |
| 2 | | Standings |
| 24-08 | 1 | 2 | Stage 5Teningen - Vogtsburg im Kaiserstuhl | 166.0km |
| 23-08 | 5 | 3 | Stage 4Gundelfingen - Gundelfingen | 14.0km |
| 22-08 | 5 | 5 | Stage 3Schopfheim - Wehr | 174.0km |
| 21-08 | 9 | 5 | Stage 2Lutterbach - Soultz | 181.0km |
| 20-08 | 12 | 5 | Stage 1Schliengen - Bad Bellingen | 155.0km |
| | | Tour de France (Nat) |
| 31 | | Standings |
| 44 | | Mountain |
| 27-07 | 51 | 31 | Stage 21Étampes - Paris | 143.0km |
| 26-07 | 41 | 33 | Stage 20Cérilly - Saint-Amand-Montrond | 53.0km |
| 25-07 | 121 | 33 | Stage 19Roanne - Montluçon | 163.0km |
| 24-07 | 62 | 34 | Stage 18Bourg-d'Oisans - Saint-Étienne | 197.0km |
| 23-07 | 57 | 34 | Stage 17Embrun - L'Alpe-d'Huez | 210.0km |
| 22-07 | 55 | 34 | Stage 16Cuneo - Jausiers | 157.0km |
| 20-07 | 40 | 30 | Stage 15Digne-les-Bains - Prato Nevoso | 216.0km |
| 19-07 | 48 | 30 | Stage 14Nîmes - Digne-les-Bains | 182.0km |
| 18-07 | 47 | 30 | Stage 13Narbonne - Nîmes | 182.0km |
| 17-07 | 62 | 30 | Stage 12Lavelanet - Narbonne | 168.0km |
| 16-07 | 49 | 33 | Stage 11Lannemezan - Foix | 166.0km |
| 14-07 | 32 | 31 | Stage 10Pau - Hautacam | 154.0km |
| 13-07 | 43 | 35 | Stage 9Toulouse - Bagnères-de-Bigorre | 222.0km |
| 12-07 | 48 | 38 | Stage 8Figeac - Toulouse | 174.0km |
| 11-07 | 54 | 39 | Stage 7Brioude - Aurillac | 158.0km |
| 10-07 | 59 | 47 | Stage 6Aigurande - Super-Besse Sancy | 195.0km |
| 09-07 | 36 | 58 | Stage 5Cholet - Châteauroux | 230.0km |
| 08-07 | 78 | 58 | Stage 4Cholet - Cholet | 29.0km |
| 07-07 | 104 | 59 | Stage 3Saint-Malo - Nantes | 195.0km |
| 06-07 | 32 | 56 | Stage 2Auray - Saint-Brieuc | 165.0km |
| 05-07 | 79 | 111 | Stage 1Brest - Plumelec | 195.0km |
| 29-06 | 17 | | National Road Championships - Germany (CN) | 210.0km |
| | | Tour de Suisse (PT) |
| 8 | | Standings |
| 22-06 | | 8 | Stage 9Altdorf - Bern | 168.0km |
| 21-06 | 16 | | Stage 8Altdorf - Klausenpass | 25.0km |
| 19-06 | 10 | | Stage 6Caslano - Verbier | 188.0km |
| 18-06 | 1 | | Stage 5Domat-Ems - Caslano | 190.0km |
| | | Bayern Rundfahrt (2.HC) |
| 8 | | Standings |
| 01-06 | | 8 | Stage 5Bad Neustadt - Erlangen | 161.0km |
| 31-05 | 15 | | Stage 4Bad Neustadt - Bad Neustadt | 25.0km |
| 30-05 | 6 | | Stage 3Donauwörth - Würzburg | 189.0km |
| 29-05 | | 4 | Stage 2Straubing - Neusäß | 219.0km |
| | | Tour de Romandie (PT) |
| 29-04 | 19 | | PrologueGenève - Genève | 1.0km |
| | | Tirreno-Adriatico (2.HC) |
| 4 | | Standings |
| 18-03 | | 4 | Stage 7San Benedetto del Tronto - San Benedetto del Tronto | 176.0km |
| 17-03 | 10 | 4 | Stage 6Civitanova Marche - Castelfidardo | 196.0km |
| 16-03 | 4 | 5 | Stage 5Macerata - Porto Recanati | 26.0km |
| 15-03 | 13 | | Stage 4Porto Recanati - Civitanova Marche | 166.0km |
| 14-03 | 7 | | Stage 3Gubbio - Montelupone | 195.0km |
| | | Volta ao Algarve (2.1) |
| 10 | | Standings |
| 24-02 | | 10 | Stage 5Vila do Bispo - Portimão | 193.0km |
| 23-02 | 10 | | Stage 4Castro Marim - Tavira | 34.0km |
| 13-02 | 11 | | Trofeo Soller (1.1) | 162.0km |