Getting to Geneva Airport (GVA) by Train

Trains provide cheap and fast transportation to Geneva Airport from Genève-Cornavin station and many other parts of Switzerland including Lausanne, Montreux, Brig, and Biel / Bienne.

Train Departures Board at Geneva Airport

Swiss Railways provide cheap and fast transportation directly to Geneva Airport (GVA) on the border of Switzerland and France on the outskirts of Genève. Most long-distance trains stop at Geneva Airport station, while passengers on regional trains often need to change trains at Genève-Cornavin — the main downtown train station in Geneva city. Traveling time from downtown Geneva is around seven minutes. Direct trains go from Geneva Airport to amongst others Genève Cornavin, Lausanne, Bern, Biel (Bienne), Fribourg (Freiburg), Montreux, and the Rhone Valley for skiers traveling to winter sports resorts in the Valais (Wallis). Swiss train tickets are available online from Trainline or SBB.

By Train from Geneva Airport (GVA) to Genève-Cornavin Station

Swiss Train from Geneva Airport en route to Fribourg & Bern
Swiss Train from Geneva Airport en route to Fribourg & Bern

Trains connect Geneva Airport station (Genève Aéroport / Flughafen Genf) with Genève-Cornavin main train station in downtown in around seven minutes. The airport station is in the basement of Geneva Airport in the Swiss / International section of the airport. It is an easy walk from check-in counters and the arrivals hall. More shops and a Migros supermarket are in the station mall.

Geneva Airport is sometimes referred to as Geneva-Cointrin. However, do not use Cointrin train station as it is far from the airport on a railway line not used by the airport-bound trains.

Around five trains per hour connect Geneva Airport station and Genève’s downtown Gare Cornavin. Trains are available in both directions from just after 5 am until around midnight.

The one-way fare is CHF3. When traveling out of the Geneva public transportation area, the Geneva Airport to Cornavin part of the journey adds CHF6 to train tickets. Buy tickets online or at vending machines. The previous free tickets are no longer distributed in the luggage claim area but most hotel guests qualify for a free transportation pass.

Geneva public transportation buses also provide useful links from Geneva Airport to downtown Genève and other suburbs.


By Train from Geneva Airport to Other Parts of Switzerland

Almost all long-distance trains departing from Genève start their journeys at Geneva Airport. This allows for direct links from the airport to many parts of Switzerland. Swiss Railways and Trainline have online timetables and tickets.

Almost all Inter-City (IC) and Inter-Region (IR) trains start from Geneva Airport. Regional Express (RE) trains usually depart from Gare Cornavin only but transfers here are easy and often do not require a platform change. Trains to France only depart from Gare Cornavin and never from the airport.

Two Inter-City (IC) train lines start / terminate at Geneva Airport and follow different routes into Switzerland:

  • IC5 – Inter-City IC5 trains link Geneva Airport and Rorschach (many terminate in Zurich) with stops at amongst others Genève-Cornavin (6 minutes), Morges (36 min), Neuchatel (1h20) Biel / Bienne (1h40), Zürich Hbf (2h50) and Zurich Airport (3h05). Not all trains go the full distance. Some IC5 trains terminate in Lausanne (no stop in Morges or Geneva) but fast connections are available on other lines.
  • IC1 – Inter-City IC1 trains link Geneva Airport (GVA) and St Gallen with stops at amongst others Genève-Cornavin (6 minutes), Lausanne (45 min), Fribourg / Freiburg (1h30), Bern / Berne (1h55), Zürich Hbf (2h55), Zurich Airport (3h10), Winterthur 3h25) and St Gallen (4h03).

These Inter-City trains generally run once per hour per line. Inter-City trains no longer stop in Nyon and IC1 trains do not stop in Morges.

Two Inter-Regio (IR) trains run from Geneva Airport on two different routes into the Valais and Central Switzerland regions – not all trains stop at all stations:

  • IR90 – Inter-Region IR90 trains link Geneva Airport with the Rhone Valley in Valais (Wallis) with stops at amongst others Genève-Cornavin (6 min), Nyon (23 min), Morges (38 min), Lausanne (50 min), Vevey (1h10), Montreux (1h15), Aigle (1h25), Bex (1h35), St Maurice (1h40), Martigny (1h50), Sion / Sitten (2h05), Sierre / Siders (2h20), Leuk (2h30), Visp (2h40) and Brig (2h45). Bus transfers are available from these Rhone Valley stations to ski resorts in the Valais Alps.
  • IR15 – Inter-Regio IR15 trains link Geneva Airport (GVA) with Luzern with stops at amongst others Genève-Cornavin (7 min), Nyon (23 min), Morges (38 min), Lausanne (52 min), Palézieux (1h10) Romont (1h25), Fribourg (1h45), Bern (2h05) and Luzern (3h10).

IR90 trains run up to four times per hour (but with different final destinations and stopping at different small stations but always in Lausanne). IR15 trains generally run once per hour.

Regional Express train RE33 sometimes starts from Geneva Airport (usually weekends only) with convenient stops en route to St Maurice at Genève-Cornavin, Coppet, Nyon, Gland, Role, and Lausanne. However, most regional express trains start and terminate at Genève-Cornavin.

High-speed TGV Lyria trains from Paris, SNCF TGV trains from France, and the Euro-City trains from Milan (Italy) only stop at Genève-Cornavin station and do not continue to Geneva Airport.

Ski transfers from Geneva Airport to Swiss ski resorts are usually by train to the closest valley station and then by bus to the alpine resort. Private transfers can, of course, be booked directly from the airport. Compare prices and book in advance – prices are relatively high compared to public transportation but may be a fair deal for small groups. Request online quotations in advance and compare prices — even the cheapest service is likely to be fairly expensive.

Bus transfers from Geneva Airport to French ski resorts and towns such as Annecy, Chamonix, Chambéry, and Grenoble are common – see links below for more details.

More on Transportation to Geneva Airport: