Ski transfer times: every resort, every airport
Distances and typical winter drive times for 159 airport-to-resort routes across France, Switzerland, Austria and Italy, in one sortable table. The pages that rank for this cover Geneva and stop.
Checked and updated 5 September 2026
The page that currently tops the rankings for ski transfer times covers Geneva and nothing else. Geneva is one of fifteen airports that serve the Alps properly, and for most of Austria and half of Italy it is not even in the conversation. Mayrhofen is 75 km from Innsbruck, about 60 minutes in a transfer van. Fly into Munich instead and the same journey doubles to two hours.
So here is the whole picture: 55 resorts, 15 airports, 159 routes, each with distance and a typical winter drive time. We checked the published figures rather than copying them, and some failed. Saint-Martin-de-Belleville's published times turned out to be coach timetables dressed up as drive times, 25 to 50 percent too high, so we replaced them with verified drive times. A published Wengen distance was 65 percent over. The guides we checked for Bormio list Malpensa, Innsbruck and Zurich and miss Milan Bergamo entirely, which at 168 km is closer than all three. Where nobody has published a figure we trust, the cell says not yet published. We do not guess.
| Argentière | France | Geneva (GVA) | 110 | 90 |
| Argentière | France | Chambéry (CMF) | 145 | 135 |
| Argentière | France | Lyon (LYS) | 220 | 165 |
| Chamonix | France | Geneva (GVA) | 88 | 80 |
| Chamonix | France | Chambéry (CMF) | 145 | 105 |
| Chamonix | France | Lyon (LYS) | 220 | 135 |
| Châtel | France | Geneva (GVA) | 82 | 105 |
| Châtel | France | Lyon (LYS) | 230 | 180 |
| Châtel | France | Zurich (ZRH) | 260 | 225 |
| Courchevel | France | Chambéry (CMF) | 100 | 90 |
| Courchevel | France | Lyon (LYS) | 177 | 115 |
| Courchevel | France | Geneva (GVA) | 179 | 120 |
| La Clusaz | France | Chambéry (CMF) | 72 | 63 |
| La Clusaz | France | Geneva (GVA) | 69 | 75 |
| La Clusaz | France | Lyon (LYS) | 154 | 107 |
| La Plagne | France | Chambéry (CMF) | 118 | 91 |
| La Plagne | France | Lyon (LYS) | 195 | 134 |
| La Plagne | France | Geneva (GVA) | 197 | 140 |
| Le Grand-Bornand | France | Geneva (GVA) | 65 | 50 |
| Le Grand-Bornand | France | Lyon (LYS) | 154 | 107 |
| Le Grand-Bornand | France | Chambéry (CMF) | 82 | not yet published |
| Les Arcs | France | Chambéry (CMF) | 142 | 85 |
| Les Arcs | France | Lyon (LYS) | 203 | 145 |
| Les Arcs | France | Geneva (GVA) | 206 | 150 |
| Les Gets | France | Geneva (GVA) | 58 | 75 |
| Les Gets | France | Lyon (LYS) | 190 | 150 |
| Les Gets | France | Grenoble (GNB) | 210 | 165 |
| Megève | France | Geneva (GVA) | 88 | 69 |
| Megève | France | Chambéry (CMF) | 94 | 75 |
| Megève | France | Lyon (LYS) | 170 | 120 |
| Méribel | France | Chambéry (CMF) | 100 | 76 |
| Méribel | France | Lyon (LYS) | 177 | 117 |
| Méribel | France | Geneva (GVA) | 179 | 127 |
| Saint-Martin-de-Belleville | France | Chambéry (CMF) | 104 | 80 |
| Saint-Martin-de-Belleville | France | Geneva (GVA) | 138 | 120 |
| Saint-Martin-de-Belleville | France | Lyon (LYS) | 182 | 120 |
| Samoëns | France | Geneva (GVA) | 79 | 69 |
| Samoëns | France | Chambéry (CMF) | 124 | 89 |
| Samoëns | France | Lyon (LYS) | 200 | 132 |
| Serre Chevalier | France | Turin (TRN) | 122 | 105 |
| Serre Chevalier | France | Grenoble (GNB) | 158 | 145 |
| Serre Chevalier | France | Lyon (LYS) | 205 | 165 |
| Tignes | France | Chambéry (CMF) | 140 | 150 |
| Tignes | France | Geneva (GVA) | 220 | 180 |
| Tignes | France | Lyon (LYS) | 215 | 210 |
| Val Thorens | France | Chambéry (CMF) | 112 | 87 |
| Val Thorens | France | Lyon (LYS) | 198 | 138 |
| Val Thorens | France | Geneva (GVA) | 155 | 155 |
| Val d'Isère | France | Chambéry (CMF) | 144 | 110 |
| Val d'Isère | France | Lyon (LYS) | 220 | 180 |
| Val d'Isère | France | Geneva (GVA) | 180 | 210 |
| Adelboden | Switzerland | Bern (BRN) | 71 | 70 |
| Adelboden | Switzerland | Zurich (ZRH) | 199 | 150 |
| Adelboden | Switzerland | Geneva (GVA) | 192 | 170 |
| Andermatt | Switzerland | Zurich (ZRH) | 124 | 108 |
| Andermatt | Switzerland | Milan Malpensa (MXP) | 186 | 140 |
| Arosa | Switzerland | Zurich (ZRH) | 148 | 113 |
| Arosa | Switzerland | Innsbruck (INN) | 247 | 210 |
| Crans-Montana | Switzerland | Geneva (GVA) | 183 | 134 |
| Crans-Montana | Switzerland | Zurich (ZRH) | 303 | 198 |
| Davos | Switzerland | Zurich (ZRH) | 154 | 125 |
| Davos | Switzerland | Innsbruck (INN) | 175 | 165 |
| Davos | Switzerland | Milan Malpensa (MXP) | 246 | 185 |
| Engelberg | Switzerland | Zurich (ZRH) | 100 | 70 |
| Engelberg | Switzerland | Milan Malpensa (MXP) | 237 | 168 |
| Grindelwald | Switzerland | Bern (BRN) | 70 | 60 |
| Grindelwald | Switzerland | Zurich (ZRH) | 152 | 120 |
| Grindelwald | Switzerland | Geneva (GVA) | 231 | 150 |
| Gstaad | Switzerland | Bern (BRN) | 80 | 80 |
| Gstaad | Switzerland | Geneva (GVA) | 150 | 120 |
| Gstaad | Switzerland | Zurich (ZRH) | 200 | 165 |
| Klosters | Switzerland | Zurich (ZRH) | 160 | 110 |
| Klosters | Switzerland | Innsbruck (INN) | 175 | 165 |
| Laax | Switzerland | Zurich (ZRH) | 150 | 100 |
| Laax | Switzerland | Milan Malpensa (MXP) | 226 | 165 |
| Laax | Switzerland | Munich (MUC) | 324 | 195 |
| St. Moritz | Switzerland | Innsbruck (INN) | 186 | 160 |
| St. Moritz | Switzerland | Zurich (ZRH) | 208 | 165 |
| St. Moritz | Switzerland | Milan Malpensa (MXP) | 188 | 176 |
| Verbier | Switzerland | Geneva (GVA) | 160 | 120 |
| Verbier | Switzerland | Zurich (ZRH) | 290 | 200 |
| Verbier | Switzerland | Milan Malpensa (MXP) | 265 | 225 |
| Villars | Switzerland | Geneva (GVA) | 120 | 90 |
| Villars | Switzerland | Zurich (ZRH) | 243 | 153 |
| Wengen * | Switzerland | Bern (BRN) | 62 | 55 |
| Wengen * | Switzerland | Zurich (ZRH) | 144 | 105 |
| Wengen * | Switzerland | Geneva (GVA) | 234 | 150 |
| Zermatt * | Switzerland | Geneva (GVA) | 236 | 160 |
| Zermatt * | Switzerland | Milan Malpensa (MXP) | 197 | 180 |
| Zermatt * | Switzerland | Zurich (ZRH) | 237 | 230 |
| Bad Gastein | Austria | Salzburg (SZG) | 98 | 80 |
| Bad Gastein | Austria | Munich (MUC) | 265 | 174 |
| Bad Gastein | Austria | Innsbruck (INN) | 197 | 180 |
| Hintertux | Austria | Innsbruck (INN) | 93 | 90 |
| Hintertux | Austria | Salzburg (SZG) | 190 | 140 |
| Hintertux | Austria | Munich (MUC) | 215 | 150 |
| Ischgl | Austria | Innsbruck (INN) | 100 | 80 |
| Ischgl | Austria | Zurich (ZRH) | 235 | 165 |
| Ischgl | Austria | Munich (MUC) | 230 | 180 |
| Kitzbühel | Austria | Innsbruck (INN) | 96 | 75 |
| Kitzbühel | Austria | Salzburg (SZG) | 81 | 90 |
| Kitzbühel | Austria | Munich (MUC) | 174 | 110 |
| Lech | Austria | Innsbruck (INN) | 120 | 100 |
| Lech | Austria | Zurich (ZRH) | 190 | 140 |
| Lech | Austria | Munich (MUC) | 230 | 165 |
| Mayrhofen | Austria | Innsbruck (INN) | 75 | 60 |
| Mayrhofen | Austria | Salzburg (SZG) | 170 | 110 |
| Mayrhofen | Austria | Munich (MUC) | 196 | 120 |
| Obertauern | Austria | Salzburg (SZG) | 92 | 70 |
| Obertauern | Austria | Munich (MUC) | 260 | 160 |
| Saalbach-Hinterglemm | Austria | Salzburg (SZG) | 90 | 90 |
| Saalbach-Hinterglemm | Austria | Innsbruck (INN) | 160 | 150 |
| Saalbach-Hinterglemm | Austria | Munich (MUC) | 220 | 165 |
| Schladming | Austria | Salzburg (SZG) | 90 | 60 |
| Schladming | Austria | Munich (MUC) | 250 | 150 |
| SkiWelt | Austria | Innsbruck (INN) | 84 | 61 |
| SkiWelt | Austria | Salzburg (SZG) | 79 | 76 |
| SkiWelt | Austria | Munich (MUC) | 148 | 92 |
| St. Anton | Austria | Innsbruck (INN) | 96 | 75 |
| St. Anton | Austria | Zurich (ZRH) | 195 | 150 |
| St. Anton | Austria | Munich (MUC) | 250 | 180 |
| Sölden | Austria | Innsbruck (INN) | 83 | 75 |
| Sölden | Austria | Munich (MUC) | 234 | 185 |
| Sölden | Austria | Salzburg (SZG) | 261 | 185 |
| Zürs | Austria | Innsbruck (INN) | 120 | 100 |
| Zürs | Austria | Zurich (ZRH) | 190 | 140 |
| Zürs | Austria | Munich (MUC) | 230 | 165 |
| Alta Badia | Italy | Bolzano (BZO) | 74 | 84 |
| Alta Badia | Italy | Innsbruck (INN) | 133 | 104 |
| Alta Badia | Italy | Verona (VRN) | 247 | 173 |
| Bormio | Italy | Milan Bergamo (BGY) | 168 | 140 |
| Bormio | Italy | Milan Malpensa (MXP) | 217 | 181 |
| Bormio | Italy | Innsbruck (INN) | 189 | 196 |
| Bormio | Italy | Zurich (ZRH) | 271 | 240 |
| Cervinia | Italy | Turin (TRN) | 120 | 105 |
| Cervinia | Italy | Milan Malpensa (MXP) | 190 | 145 |
| Cervinia | Italy | Geneva (GVA) | 210 | 165 |
| Cortina d'Ampezzo | Italy | Venice (VCE) | 149 | 117 |
| Cortina d'Ampezzo | Italy | Innsbruck (INN) | 162 | 148 |
| Cortina d'Ampezzo | Italy | Verona (VRN) | 266 | 188 |
| Courmayeur | Italy | Geneva (GVA) | 118 | 90 |
| Courmayeur | Italy | Turin (TRN) | 151 | 100 |
| Courmayeur | Italy | Milan Malpensa (MXP) | 214 | 140 |
| Kronplatz | Italy | Innsbruck (INN) | 108 | 84 |
| Kronplatz | Italy | Verona (VRN) | 227 | 138 |
| Kronplatz | Italy | Venice (VCE) | 316 | 185 |
| Livigno | Italy | Innsbruck (INN) | 180 | 170 |
| Livigno | Italy | Zurich (ZRH) | 218 | 190 |
| Livigno | Italy | Milan Malpensa (MXP) | 250 | 215 |
| Livigno | Italy | Milan Bergamo (BGY) | 196 | not yet published |
| Madonna di Campiglio | Italy | Bolzano (BZO) | 107 | 99 |
| Madonna di Campiglio | Italy | Verona (VRN) | 176 | 130 |
| Madonna di Campiglio | Italy | Milan Malpensa (MXP) | 264 | 228 |
| Sestriere | Italy | Turin (TRN) | 110 | 105 |
| Sestriere | Italy | Milan Malpensa (MXP) | 240 | 180 |
| Sestriere | Italy | Geneva (GVA) | not yet published | 180 |
| Val Gardena | Italy | Bolzano (BZO) | 43 | 49 |
| Val Gardena | Italy | Innsbruck (INN) | 115 | 81 |
| Val Gardena | Italy | Verona (VRN) | 191 | 134 |
90 minutes or under: short break territory
Ninety minutes is the honest cut-off for a long weekend. Under it, a Friday morning flight puts you on a lift by early afternoon and you still get three full days on snow. Over it, you are donating half a day to the road in each direction. 39 of the 159 routes come in at 90 minutes or under.
- From Geneva: Le Grand-Bornand 50 min, Megève 69 min, Samoëns 69 min, La Clusaz 75 min, Les Gets 75 min, Chamonix 80 min, Argentière 90 min, Courmayeur 90 min, Villars 90 min
- From Innsbruck: Mayrhofen 60 min, SkiWelt 61 min, Kitzbühel 75 min, St. Anton 75 min, Sölden 75 min, Ischgl 80 min, Val Gardena 81 min, Kronplatz 84 min, Hintertux 90 min
- From Chambéry: La Clusaz 63 min, Megève 75 min, Méribel 76 min, Saint-Martin-de-Belleville 80 min, Les Arcs 85 min, Val Thorens 87 min, Samoëns 89 min, Courchevel 90 min
- From Salzburg: Schladming 60 min, Obertauern 70 min, SkiWelt 76 min, Bad Gastein 80 min, Kitzbühel 90 min, Saalbach-Hinterglemm 90 min
- From Bern: Wengen 55 min to the railhead, Grindelwald 60 min, Adelboden 70 min, Gstaad 80 min
- From Zurich: Engelberg 70 min
- From Bolzano: Val Gardena 49 min, Alta Badia 84 min
Two caveats before you build a trip around this list. Bern is the closest airport to the Jungfrau villages but flights into it are very limited, so check the schedule first. And Bolzano holds the shortest transfer in the whole table, Val Gardena in 49 minutes, if your dates line up with a flight; Innsbruck at 81 minutes is the dependable route in.
The ones people underestimate
Kilometres lie in the Alps. From Geneva, Val d'Isère and Courchevel are one kilometre apart on paper, 180 km against 179. Courchevel takes two hours; Val d'Isère takes three and a half, because the top of the Tarentaise crawls. Zermatt plays the same trick with airports: Geneva and Zurich are 236 and 237 km, near enough identical, and the Zurich run takes 70 minutes longer.
The pattern is the final climb. Châtel is 82 km from Geneva and still takes an hour and three quarters. Every route into Val Thorens funnels through Moûtiers and then climbs for 37 km. Arosa's last 30 km is the winding mountain road up from Chur. Every route into St. Moritz crosses an alpine pass, which is why 208 km from Zurich is a 2 hour 45 transfer. And Madonna di Campiglio reads as an easy Milan hop until you see the number: 264 km from Malpensa, nearly four hours. From Verona it is 130 minutes. Fly there instead.
Winter Saturdays run on their own timetable
The times above are typical winter figures where operators publish them, and route planner figures where that is all that exists; SkiWelt's row, for example, comes from a route planner and reads closer to best-case. Operators publish ranges for a reason: the same Geneva to Châtel transfer is quoted at anywhere between an hour and a half and two hours by the operator that runs it. The spread is Saturday. Change-over day compresses a week of arrivals into the same motorway exits and the same valley climbs, and February half term is the worst of it.
Planning a week in Val d'Isère?
Chalets, apartments and hotels in Val d'Isère, priced for the whole week.
