There are 7 ways to get from Basel to Milan by bus, train, rideshare, plane, or car
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 Basel SBB to Milano, Autostazione Lampugnanobus N487 / ...
4h 20m€20–40Train
- Take the train from Basel SBB to Luganotrain Ic21 / ...
- Take the train from Lugano to Milano Centraletrain Re 80 / ...
4h 54m€26–115Rideshare
- Take the rideshare from Basel to Milan338.6 km
4h 18m€20Train, fly
- Take the train from Basel SBB to Zürich HBtrain
- Fly from Zurich Airport (ZRH) to Milano Malpensa Airport (MXP)plane ZRH - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibalditrain
4h 23m€89–234Train via Como
- Take the train from Basel SBB to Bellinzonatrain Ec
- Take the train from Bellinzona to Como S. Giovannitrain S10 / ...
- Take the train from Como S.Giovanni to Milano Porta Garibalditrain S11
5h 12m€44–145Bus via Basel Mulhouse Freiburg - Airport
- Take the bus from Basel Mulhouse Freiburg - Airport to Milano, Autostazione Lampugnanobus BlaBlaCar Bus
7h 13m€33–59Drive 338.5 km
- Drive from Basel to Milancar 338.5 km
3h 39m€58–83
Basel to Milan by bus
Questions & Answers
The cheapest way to get from Basel to Milan is to rideshare which costs €20 and takes 4h 18m.
The fastest way to get from Basel to Milan is to drive which takes 3h 39m and costs €55 - €85.
Yes, there is a direct bus departing from Basel SBB and arriving at Milano, Autostazione Lampugnano. Services depart every three hours, and operate every day. The journey takes approximately 4h 20m.
No, there is no direct train from Basel to Milan. However, there are services departing from Basel SBB and arriving at Milano Centrale via Lugano. The journey, including transfers, takes approximately 4h 54m.
The distance between Basel and Milan is 332 km. The road distance is 338.5 km.
The best way to get from Basel to Milan without a car is to bus which takes 4h 20m and costs €20 - €40.
The bus from Basel SBB to Milano, Autostazione Lampugnano takes 4h 20m including transfers and departs every three hours.
Basel to Milan bus services, operated by FlixBus, depart from Basel SBB station.
Basel to Milan train services, operated by Swiss Federal Railways (SBB CFF FFS), depart from Basel SBB station.
The best way to get from Basel to Milan is to bus which takes 4h 20m and costs €20 - €40. Alternatively, you can train, which costs €26 - €120 and takes 4h 54m.
What companies run services between Basel, Switzerland and Milan, Italy?
FlixBus operates a bus from Basel SBB to Milano, Autostazione Lampugnano every 3 hours. Tickets cost €20–40 and the journey takes 4h 20m. Alternatively, you can take a train from Basel SBB to Milano Centrale via Lugano in around 4h 54m.
- Website
- swiss.com
Flights from Zurich Airport to Milano Malpensa Airport
- Ave. Duration
- 55 min
- When
- Every day
- Estimated price
- €70–230
- Website
- ethiopianairlines.com
Flights from Zurich Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €60–160
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Basel SBB to Lugano
- Ave. Duration
- 2h 55m
- Frequency
- Every 2 hours
- Estimated price
- €55–110
- Website
- https://www.sbb.ch/en
Train from Basel SBB to Zürich HB
- Ave. Duration
- 1h 12m
- Frequency
- Every 20 minutes
- Estimated price
- €21–40
- Website
- https://www.sbb.ch/en
Train from Basel SBB to Bellinzona
- Ave. Duration
- 2h 39m
- Frequency
- Every 2 hours
- Estimated price
- €55–100
- Website
- https://www.sbb.ch/en
Train from Bellinzona to Como S. Giovanni
- Ave. Duration
- 58 min
- Frequency
- Hourly
- Estimated price
- €16–29
- Website
- https://www.sbb.ch/en
Train from Como S.Giovanni to Milano Porta Garibaldi
- Ave. Duration
- 49 min
- Frequency
- Twice a week
- Estimated price
- €23–45
- Website
- https://www.sbb.ch/en
- Phone
- +49 (0) 7531 915109
- info@sbb-deutschland.de
- Website
- sbb-deutschland.de
Train from Basel SBB to Lugano
- Ave. Duration
- 3h 21m
- Frequency
- Once daily
- Estimated price
- €20–25
- Schedules at
- sbb-deutschland.de
Train from Basel SBB to Bellinzona
- Ave. Duration
- 3h 5m
- Frequency
- Once daily
- Estimated price
- €18–23
- Schedules at
- sbb-deutschland.de
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Lugano to Milano Centrale
- Ave. Duration
- 1h 15m
- Frequency
- Hourly
- Estimated price
- €6–8
- Website
- https://www.trenord.it/en/
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 44 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
Train from Bellinzona to Como S. Giovanni
- Ave. Duration
- 58 min
- Frequency
- Hourly
- Estimated price
- €3–4
- Website
- https://www.trenord.it/en/
Train from Como S.Giovanni to Milano Porta Garibaldi
- Ave. Duration
- 1h 1m
- Frequency
- Hourly
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
- Phone
- +41 58 580 70 70
- info@sob.ch
- Website
- sob.ch
Train from Basel SBB to Bellinzona
- Ave. Duration
- 3h 57m
- Frequency
- Every 4 hours
- Schedules at
- sob.ch
Rome2Rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Basel SBB to Milano, Autostazione Lampugnano
- Ave. Duration
- 4h 20m
- Frequency
- Every 3 hours
- Estimated price
- €20–40
- Website
- https://www.flixbus.co.uk
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Basel Mulhouse Freiburg - Airport to Milano, Autostazione Lampugnano
- Ave. Duration
- 6h
- Frequency
- 4 times a week
- Estimated price
- €30–55
- Website
- https://www.blablacar.co.uk/bus
- Phone
- +3 318 576 2228
- Website
- blablacar.com
Rideshare from Basel to Milan
- Ave. Duration
- 4h 18m
- Frequency
- 4 times a day
- Estimated price
- €20
- Schedules at
- blablacar.com
Want to know more about travelling around Italy
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
Italian Lakes: Getting around by train
Read the travel guide
More Questions & Answers
Basel to Milan bus services, operated by FlixBus, arrive at Milano, Autostazione Lampugnano station.
Basel to Milan train services, operated by Swiss Federal Railways (SBB CFF FFS), arrive at Lugano station.
Yes, the driving distance between Basel to Milan is 339 km. It takes approximately 3h 39m to drive from Basel to Milan.
Book your Basel to Milan train tickets online with Omio.
Book your Basel to Milan bus tickets online with Omio and FlixBus.
There are 13959+ hotels available in Milan.
Check out Blablacar's carpooling service for rideshare options between Basel and Milan. A great option if you don't have a driver's licence or want to avoid public transport.






























