There are 8 ways to get from Milan to Basel by train (Trenitalia), bus, rideshare, plane, car, 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 (Trenitalia)
best- Take the train from Milano Centrale to Basel SbbEc
4h 22mCHF 70–120Rideshare
cheapest- Take the rideshare from Milan to Basel338.1 km
4h 16mCHF 17–19Bus
- Take the bus from Milano, Autostazione Lampugnano to Basel SBBN524 / ...
5h 5mCHF 20–65Fly Milan Linate Airport to Basel
- Fly from Milan Linate Airport (LIN) to Basel (BSL)LIN - BSL
5h 52mCHF 94–266Train via Arth
- Take the train from Milano Centrale to Arth-GoldauEc
- Take the train from Arth-Goldau to Basel SBBIc21 / ...
4h 50mCHF 56–157Bus via Basel Mulhouse Freiburg - Airport
- Take the bus from Milano, Autostazione Lampugnano to Basel Mulhouse Freiburg - AirportBlaBlaCar Bus
6h 14mCHF 33–61Drive 338 km
- Drive from Milan to Basel338 km
3h 38mCHF 54–78Train to Milano Malpensa Airport, fly to Zurich Airport, train
- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Fly from Milano Malpensa Airport (MXP) to Zurich Airport (ZRH)MXP - ZRH
- Take the train from Zürich HB to Basel SBB
5h 20mCHF 86–242
Milan to Basel by train (Trenitalia)
Questions & Answers
The cheapest way to get from Milan to Basel is to rideshare which costs SFr 17 - SFr 19 and takes 4h 16m.
The fastest way to get from Milan to Basel is to drive which takes 3h 38m and costs SFr 50 - SFr 80.
Yes, there is a direct bus departing from Milano, Autostazione Lampugnano and arriving at Basel SBB. Services depart every three hours, and operate every day. The journey takes approximately 5h 5m.
Yes, there is a direct train departing from Milano Centrale and arriving at Basel Sbb. Services depart five times a day, and operate every day. The journey takes approximately 4h 22m.
The distance between Milan and Basel is 362 km. The road distance is 338 km.
The best way to get from Milan to Basel without a car is to train which takes 4h 22m and costs SFr 70 - SFr 120.
The train from Milan Centrale to Basel Sbb takes 4h 22m including transfers and departs five times a day.
Milan to Basel bus services, operated by FlixBus, depart from Milano, Autostazione Lampugnano station.
Milan to Basel train services, operated by Trenitalia EuroCity, depart from Milano Centrale station.
The best way to get from Milan to Basel is to train which takes 4h 22m and costs SFr 70 - SFr 120. Alternatively, you can bus, which costs SFr 20 - SFr 65 and takes 5h 5m, you could also fly, which costs SFr 90 - SFr 270 and takes 5h 52m.
What companies run services between Milan, Italy and Basel, Switzerland?
Trenitalia EuroCity operates a train from Milano Centrale to Basel Sbb 5 times a day. Tickets cost CHF 70–120 and the journey takes 4h 22m. Alternatively, FlixBus operates a bus from Milano, Autostazione Lampugnano to Basel SBB every 3 hours. Tickets cost CHF 20–65 and the journey takes 5h 5m.
- Website
- swiss.com
Flights from Milano Malpensa Airport to Zurich Airport
- Ave. Duration
- 1h 1m
- When
- Every day
- Estimated price
- CHF 45–180
- Website
- lufthansa.com
Flights from Milan Linate Airport to Basel via Frankfurt
- Ave. Duration
- 4h 12m
- When
- Every day
- Estimated price
- CHF 90–300
Flights from Milan Linate Airport to Basel via Munich
- Ave. Duration
- 6h 20m
- When
- Tuesday and Saturday
- Estimated price
- CHF 90–260
- Website
- klm.com
Flights from Milan Linate Airport to Basel via Amsterdam Schiphol
- Ave. Duration
- 4h 36m
- When
- Every day
- Estimated price
- CHF 70–350
- Website
- airdolomiti.it
Flights from Milan Linate Airport to Basel via Frankfurt
- Ave. Duration
- 4h 12m
- When
- Every day
- Estimated price
- CHF 90–300
- Website
- airfrance.com
Flights from Milan Linate Airport to Basel via Paris Charles de Gaulle
- Ave. Duration
- 4h 5m
- When
- Every day
- Estimated price
- CHF 55–320
- Website
- easyjet.com
Flights from Milan Linate Airport to Basel via Amsterdam Schiphol
- Ave. Duration
- 4h 10m
- When
- Monday and Sunday
- Estimated price
- CHF 90–250
- Website
- ethiopianairlines.com
Flights from Milano Malpensa Airport to Zurich Airport
- Ave. Duration
- 1h 5m
- When
- Every day
- Estimated price
- CHF 60–140
- Phone
- +39 06 68475475
- ufficiogruppi@trenitalia.it
- Website
- trenitalia.com
Train from Milano Centrale to Basel Sbb
- Ave. Duration
- 4h 22m
- Frequency
- 5 times a day
- Estimated price
- CHF 70–120
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- CHF 85–120
- 2nd Class
- CHF 70–100
Train from Milano Centrale to Arth-Goldau
- Ave. Duration
- 2h 32m
- Frequency
- Every 3 hours
- Estimated price
- CHF 45–90
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- CHF 60–90
- 2nd Class
- CHF 45–60
Train from Arth-Goldau to Basel SBB
- Ave. Duration
- 1h 41m
- Frequency
- Twice daily
- Estimated price
- CHF 29–70
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- CHF 50–70
- 2nd Class
- CHF 29–40
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Arth-Goldau to Basel SBB
- Ave. Duration
- 1h 41m
- Frequency
- Every 3 hours
- Estimated price
- CHF 30–50
- Website
- https://www.sbb.ch/en
Train from Zürich HB to Basel SBB
- Ave. Duration
- 1h 14m
- Frequency
- Every 20 minutes
- Estimated price
- CHF 19–40
- Website
- https://www.sbb.ch/en
- Phone
- +41 58 580 70 70
- info@sob.ch
- Website
- sob.ch
Train from Arth-Goldau to Basel SBB
- Ave. Duration
- 1h 41m
- Frequency
- Every 4 hours
- Schedules at
- sob.ch
- Phone
- +49 (0) 7531 915109
- info@sbb-deutschland.de
- Website
- sbb-deutschland.de
Train from Arth-Goldau to Basel SBB
- Ave. Duration
- 1h 41m
- Frequency
- Once daily
- Estimated price
- CHF 10–13
- Schedules at
- sbb-deutschland.de
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 41 min
- Frequency
- Hourly
- Estimated price
- CHF 4–5
- Website
- https://www.trenord.it/en/
- Phone
- +39 02-72494949
- Website
- malpensaexpress.it
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 41 min
- Frequency
- Hourly
- Estimated price
- CHF 14
- Website
- https://www.malpensaexpress.it/en/
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Milano, Autostazione Lampugnano to Basel SBB
- Ave. Duration
- 5h 5m
- Frequency
- Every 3 hours
- Estimated price
- CHF 20–65
- Website
- https://www.flixbus.co.uk
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Milano, Autostazione Lampugnano to Basel Mulhouse Freiburg - Airport
- Ave. Duration
- 5h 55m
- Frequency
- 4 times a week
- Estimated price
- CHF 29–60
- Website
- https://www.blablacar.co.uk/bus
- Phone
- +3 318 576 2228
- Website
- blablacar.com
Rideshare from Milan to Basel
- Ave. Duration
- 4h 16m
- Frequency
- 4 times a day
- Estimated price
- CHF 17–19
- Schedules at
- blablacar.com
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
Want to know more about Flixbus?
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 Basel bus services, operated by FlixBus, arrive at Basel SBB station.
Milan to Basel train services, operated by Trenitalia EuroCity, arrive at Basel Sbb station.
Yes, the driving distance between Milan to Basel is 338 km. It takes approximately 3h 38m to drive from Milan to Basel.
Book your Milan to Basel train tickets online with Omio.
Book your Milan to Basel bus tickets online with Omio and FlixBus.
There are 1260+ hotels available in Basel.
Check out Blablacar's carpooling service for rideshare options between Milan and Basel. A great option if you don't have a driver's licence or want to avoid public transport.







































