There are 6 ways to get from Milan to Rapperswil by bus, train (Trenitalia), car, train, or plane
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Bus
best- Take the bus from Milano - Famagosta to ZÜRICH, Carparkplatz am Sihlquaibus
3h 5mDrive 256.8 km
cheapest- Drive from Milan to Rapperswilcar 256.8 km
3h 5mCHF 42–61Train
- Take the train from Milano Centrale to Arth-Goldautrain Ec
- Take the train from Arth-Goldau to Rapperswil SGtrain Vae
3h 59mCHF 62–112Train to Milano Malpensa Airport, fly, train
- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Zurich Airport (ZRH)plane MXP - ZRH
- Take the train from Zürich Oerlikon to Rapperswil SGtrain
3h 39mCHF 86–220Train via Como
- Take the train from Milano Porta Garibaldi to Como S.Giovannitrain S11
- Take the train from Como S. Giovanni to Zugtrain Ec
- Take the train from Zug to Rapperswil SGtrain S5
5h 49mCHF 91–324Fly from Milan Linate Airport, train
- Fly from Milan Linate Airport (LIN) to Zurich Airport (ZRH)plane LIN - ZRH
- Take the train from Zürich Oerlikon to Rapperswil SGtrain
6h 33mCHF 129–487
Milan to Rapperswil by train
Questions & Answers
The cheapest way to get from Milan to Rapperswil is to drive which costs SFr 40 - SFr 65 and takes 3h 5m.
The fastest way to get from Milan to Rapperswil is to drive which takes 3h 5m and costs SFr 40 - SFr 65.
No, there is no direct bus from Milan to Rapperswil. However, there are services departing from Milano - Famagosta and arriving at ZÜRICH, Carparkplatz am Sihlquai via . The journey, including transfers, takes approximately 3h 5m.
No, there is no direct train from Milan to Rapperswil. However, there are services departing from Milano Centrale and arriving at Rapperswil SG via Arth-Goldau. The journey, including transfers, takes approximately 3h 59m.
The distance between Milan and Rapperswil is 357 km. The road distance is 256.8 km.
The best way to get from Milan to Rapperswil without a car is to bus which takes 3h 5m and costs .
It takes approximately 3h 5m to get from Milan to Rapperswil, including transfers.
Milan to Rapperswil bus services, operated by Onebus, depart from Milano - Famagosta station.
Milan to Rapperswil train services, operated by Trenitalia EuroCity, depart from Milano Centrale station.
The best way to get from Milan to Rapperswil is to bus which takes 3h 5m and costs . Alternatively, you can train, which costs SFr 60 - SFr 120 and takes 3h 59m.
What companies run services between Milan, Italy and Rapperswil, Canton of St. Gallen, Switzerland?
Onebus operates a bus from Milano - Famagosta to ZÜRICH, Carparkplatz am Sihlquai once a week, and the journey takes 2h 22m. Alternatively, you can take a train from Milano Centrale to Rapperswil SG via Arth-Goldau in around 3h 59m.
- Website
- lufthansa.com
Flights from Milan Linate Airport to Zurich Airport via Frankfurt
- Ave. Duration
- 3h 57m
- When
- Every day
- Estimated price
- CHF 85–320
Flights from Milan Linate Airport to Zurich Airport via Munich
- Ave. Duration
- 5h 13m
- When
- Every day
- Estimated price
- CHF 80–550
- Website
- swiss.com
Flights from Milano Malpensa Airport to Zurich Airport
- Ave. Duration
- 58 min
- When
- Every day
- Estimated price
- CHF 50–310
- Website
- austrian.com
Flights from Milan Linate Airport to Zurich Airport via Vienna
- Ave. Duration
- 4h 18m
- When
- Every day
- Estimated price
- CHF 85–320
- Website
- ethiopianairlines.com
Flights from Milano Malpensa Airport to Zurich Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- CHF 90–150
- Website
- eurowings.com
Flights from Milan Linate Airport to Zurich Airport via Dusseldorf
- Ave. Duration
- 6h
- When
- Monday, Thursday, and Friday
- Estimated price
- CHF 130–350
- Phone
- +39 06 68475475
- [email protected]
- Website
- trenitalia.com
Train from Milano Centrale to Arth-Goldau
- Ave. Duration
- 2h 32m
- Frequency
- Hourly
- Estimated price
- CHF 45–90
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- CHF 60–90
- 2nd Class
- CHF 45–60
- Phone
- +41 58 580 70 70
- Website
- sob.ch
Train from Arth-Goldau to Rapperswil SG
- Ave. Duration
- 47 min
- Frequency
- Hourly
- Estimated price
- CHF 16–25
- Schedules at
- sob.ch
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- trenord.it
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 4–5
- Website
- https://www.trenord.it/en/
Train from Milano Porta Garibaldi to Como S.Giovanni
- Ave. Duration
- 1h 1m
- Frequency
- Hourly
- Estimated price
- CHF 4–5
- Website
- https://www.trenord.it/en/
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Zürich Oerlikon to Rapperswil SG
- Ave. Duration
- 45 min
- Frequency
- Every 20 minutes
- Estimated price
- CHF 16–50
- Website
- https://www.sbb.ch/en
Train from Milano Porta Garibaldi to Como S.Giovanni
- Ave. Duration
- 1h 1m
- Frequency
- Once daily
- Estimated price
- CHF 16–50
- Website
- https://www.sbb.ch/en
Train from Como S. Giovanni to Zug
- Ave. Duration
- 2h 9m
- Frequency
- Hourly
- Estimated price
- CHF 60–190
- Website
- https://www.sbb.ch/en
Train from Zug to Rapperswil SG
- Ave. Duration
- 1h 25m
- Frequency
- Every 30 minutes
- Estimated price
- CHF 27–85
- Website
- https://www.sbb.ch/en
Train from Zürich Oerlikon to Rapperswil SG
- Ave. Duration
- 45 min
- Frequency
- Every 20 minutes
- Estimated price
- CHF 16–50
- Website
- https://www.sbb.ch/en
- Phone
- +39 0362 185 0590
- [email protected]
- Website
- onebus.it
Bus from Milano - Famagosta to ZÜRICH, Carparkplatz am Sihlquai
- Ave. Duration
- 2h 22m
- Frequency
- Once a week
- Website
- https://onebus.it/
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
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
Italy Travel Guides
Read the travel guide
Getting to Milan from the airport
Read the travel guide
More Questions & Answers
Milan to Rapperswil bus services, operated by Onebus, arrive at ZÜRICH, Carparkplatz am Sihlquai station.
Milan to Rapperswil train services, operated by Trenitalia EuroCity, arrive at Arth-Goldau station.
Yes, the driving distance between Milan to Rapperswil is 257 km. It takes approximately 3h 5m to drive from Milan to Rapperswil.
Book your Milan to Rapperswil train tickets online with Omio.
Book your Milan to Rapperswil bus tickets online with Omio.
There are 356+ hotels available in Rapperswil.



















