There are 8 ways to get from San Donato Milanese to Geneva by train (Trenitalia), bus, car, plane, or train
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train via Milano Rogoredo (Trenitalia)
best- Take the train from Milano Centrale to Genevetrain Ec
5h 48mCHF 73–125Bus via Milan
cheapest- Take the bus from Milan to Genevabus FlixBus 472 / ...
7h 9mCHF 28–51Drive 325.2 km
- Drive from San Donato Milanese to Genevacar 325.2 km
3h 41mCHF 53–76Fly from Milan Linate Airport
- Fly from Milan Linate Airport (LIN) to Geneva International Airport (GVA)plane LIN - GVA
5h 50mCHF 103–224Train (Trenitalia)
- Take the train from Milano P.Garibaldi to Genevetrain Ec
5h 54mCHF 72–123Bus
- Take the bus from Milan - San Donato Bus Station to Geneva - Bus Stationbus BlaBlaCar Bus
7h 45mCHF 28–52Train, train to Milano Malpensa Airport, fly
- Take the train from Borgolombardo to Milano Bovisa Politecnicotrain
- Take the train from Milano Bovisa Politecnico to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Geneva International Airport (GVA)plane MXP - GVA
3h 12mCHF 76–198Train to Zurich Airport, fly
- Take the train from Milano Centrale to Zuerich Hbtrain
- Fly from Zurich Airport (ZRH) to Geneva International Airport (GVA)plane ZRH - GVA
6h 18mCHF 151–376
San Donato Milanese to Geneva by train (Trenitalia)
Questions & Answers
The cheapest way to get from San Donato Milanese to Geneva is to bus which costs SFr 27 - SFr 55 and takes 7h 45m.
The fastest way to get from San Donato Milanese to Geneva is to train and fly which takes 3h 12m and costs SFr 75 - SFr 200.
No, there is no direct bus from San Donato Milanese to Geneva. However, there are services departing from Milan and arriving at Geneva via . The journey, including transfers, takes approximately 7h 9m.
No, there is no direct train from San Donato Milanese to Geneva. However, there are services departing from Borgolombardo and arriving at Geneve via Milano Rogoredo and Milano Centrale. The journey, including transfers, takes approximately 5h 48m.
The distance between San Donato Milanese and Geneva is 376 km. The road distance is 325.2 km.
The best way to get from San Donato Milanese to Geneva without a car is to train via Milano Rogoredo which takes 5h 48m and costs SFr 70 - SFr 130.
It takes approximately 5h 48m to get from San Donato Milanese to Geneva, including transfers.
San Donato Milanese to Geneva bus services, operated by FlixBus, depart from Milan station.
San Donato Milanese to Geneva train services, operated by Trenitalia EuroCity, depart from Milano P.Garibaldi station.
The best way to get from San Donato Milanese to Geneva is to train via Milano Rogoredo which takes 5h 48m and costs SFr 70 - SFr 130. Alternatively, you can bus via Milan, which costs SFr 28 - SFr 55 and takes 7h 9m, you could also fly, which costs SFr 100 - SFr 230 and takes 5h 50m.
What companies run services between San Donato Milanese, Italy and Geneva, Switzerland?
Trenitalia EuroCity operates a train from Milano Centrale to Geneve 5 times a day. Tickets cost CHF 70–120 and the journey takes 4h 21m. Alternatively, FlixBus operates a bus from Milan to Geneva every 3 hours. Tickets cost CHF 25–45 and the journey takes 5h 20m.
- Website
- swiss.com
Flights from Zurich Airport to Geneva International Airport
- Ave. Duration
- 54 min
- When
- Every day
- Estimated price
- CHF 100–350
- Website
- ita-airways.com
Flights from Milan Linate Airport to Geneva International Airport via Rome
- Ave. Duration
- 3h 57m
- When
- Every day
- Estimated price
- CHF 80–270
Flights from Zurich Airport to Geneva International Airport
- Ave. Duration
- 52 min
- When
- Every day
- Estimated price
- CHF 100–350
- Website
- airfrance.com
Flights from Milan Linate Airport to Geneva International Airport via Paris Charles de Gaulle
- Ave. Duration
- 4h 42m
- When
- Every day
- Estimated price
- CHF 55–300
- Website
- lufthansa.com
Flights from Milan Linate Airport to Geneva International Airport via Frankfurt
- Ave. Duration
- 4h 2m
- When
- Thursday, Saturday, Sunday, Monday, and Friday
- Estimated price
- CHF 90–320
Flights from Milan Linate Airport to Geneva International Airport via Munich
- Ave. Duration
- 6h 35m
- When
- Every day
- Estimated price
- CHF 140–550
- Website
- easyjet.com
Flights from Milan Linate Airport to Geneva International Airport via Figari
- Ave. Duration
- 5h 55m
- When
- Saturday
- Estimated price
- CHF 120–210
Flights from Milan Linate Airport to Geneva International Airport via Paris Orly
- Ave. Duration
- 6h 25m
- When
- Monday and Friday
- Estimated price
- CHF 120–210
- Website
- luxair.lu
Flights from Milan Linate Airport to Geneva International Airport via Luxembourg
- Ave. Duration
- 3h 30m
- When
- Tuesday
- Estimated price
- CHF 95–390
- Website
- gulfair.com
Flights from Milano Malpensa Airport to Geneva International Airport
- Ave. Duration
- 55 min
- When
- Tuesday and Friday
- Estimated price
- CHF 110–170
- Website
- rj.com
Flights from Zurich Airport to Geneva International Airport
- Ave. Duration
- 50 min
- When
- Wednesday
- Estimated price
- CHF 100–190
- Phone
- +39 06 68475475
- [email protected]
- Website
- Trenitalia Eurocity
Train from Milano Centrale to Geneve
- Ave. Duration
- 4h 21m
- Frequency
- 5 times a day
- Estimated price
- CHF 70–120
- Website
- Trenitalia Eurocity
- 1st Class
- CHF 85–120
- 2nd Class
- CHF 70–100
Train from Milano P.Garibaldi to Geneve
- Ave. Duration
- 4h 28m
- Frequency
- Twice daily
- Estimated price
- CHF 70–120
- Website
- Trenitalia Eurocity
- 1st Class
- CHF 85–120
- 2nd Class
- CHF 70–100
Train from Milano Centrale to Zuerich Hb
- Ave. Duration
- 3h 17m
- Frequency
- Hourly
- Estimated price
- CHF 50–100
- Website
- Trenitalia Eurocity
- 1st Class
- CHF 65–100
- 2nd Class
- CHF 50–70
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- Trenord
Train from Borgolombardo to Milano Bovisa Politecnico
- Ave. Duration
- 37 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 2–4
- Website
- Trenord
Train from Milano Bovisa Politecnico to Malpensa Aeroporto T1
- Ave. Duration
- 31 min
- Frequency
- Every 20 minutes
- Estimated price
- CHF 3–5
- Website
- Trenord
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Milan to Geneva
- Ave. Duration
- 5h 20m
- Frequency
- Every 3 hours
- Estimated price
- CHF 25–45
- Website
- Flixbus
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from Milan - San Donato Bus Station to Geneva - Bus Station
- Ave. Duration
- 6h 35m
- Frequency
- Once daily
- Estimated price
- CHF 26–50
- Website
- BlaBlaCar Bus
Want to know more about travelling around Switzerland
Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.
Related travel guides
Italy Travel Guides
Read the travel guide
Want to know more about Flixbus?
Read the travel guide
Getting to Milan from the airport
Read the travel guide
More Questions & Answers
San Donato Milanese to Geneva bus services, operated by FlixBus, arrive at Geneva station.
San Donato Milanese to Geneva train services, operated by Trenitalia EuroCity, arrive at Geneve station.
Yes, the driving distance between San Donato Milanese to Geneva is 325 km. It takes approximately 3h 41m to drive from San Donato Milanese to Geneva.
Book your San Donato Milanese to Geneva train tickets online with Omio.
There are 456+ hotels available in Geneva.




















