There are 7 ways to get from Balsthal to Milan by train, bus, car, 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.
Train
best- Take the train from Olten to Luganotrain Ic21 / ...
- Take the train from Como S.Giovanni to Milano Porta Garibalditrain S11
6h 6m€87–322Train, bus
cheapest- Take the train from Oensingen to Zürich HBtrain Ir55 / ...
- Take the bus from Zürich to Milano, Autostazione Lampugnanobus BlaBlaCar Bus
6h 7m€44–113Drive 308.8 km
- Drive from Balsthal to Milancar 308.8 km
3h 20m€54–78Train to Zurich Airport, fly to Milano Malpensa Airport, train
- Take the train from Oensingen 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 43m€108–286Train via Zurich
- Take the train from Oensingen to Zürich HBtrain Ic5
- Take the train from Zürich HB to Como S. Giovannitrain Ec
- Take the train from Como S.Giovanni to Milano Porta Garibalditrain S11
6h 25m€100–339Bus
- Take the bus from Olten Station to Aresebus
10h 40m€44–70Fly Basel to Milan Linate Airport
- Fly from Basel (BSL) to Milan Linate Airport (LIN)plane BSL - LIN
7h 13m€113–380
Balsthal to Milan by train
Questions & Answers
The cheapest way to get from Balsthal to Milan is to train and bus which costs €40 - €120 and takes 6h 7m.
The fastest way to get from Balsthal to Milan is to drive which takes 3h 20m and costs €50 - €80.
No, there is no direct train from Balsthal to Milan. However, there are services departing from Balsthal and arriving at Milano Porta Garibaldi via Oensingen, Olten, Lugano and Como S.Giovanni. The journey, including transfers, takes approximately 6h 6m.
The distance between Balsthal and Milan is 313 km. The road distance is 308.8 km.
The best way to get from Balsthal to Milan without a car is to train which takes 6h 6m and costs €85 - €330.
It takes approximately 6h 6m to get from Balsthal to Milan, including transfers.
Balsthal to Milan train services, operated by Swiss Federal Railways (SBB CFF FFS), depart from Olten station.
The best way to get from Balsthal to Milan is to train which takes 6h 6m and costs €85 - €330. Alternatively, you can bus, which costs €40 - €70 and takes 10h 40m, you could also fly, which costs €110 - €380 and takes 7h 13m.
Balsthal to Milan train services, operated by Swiss Federal Railways (SBB CFF FFS), arrive at Lugano station.
Yes, the driving distance between Balsthal to Milan is 309 km. It takes approximately 3h 20m to drive from Balsthal to Milan.
What companies run services between Balsthal, Switzerland and Milan, Italy?
You can take a train from Balsthal to Milano Porta Garibaldi via Oensingen, Olten, Lugano, and Como S.Giovanni in around 6h 6m. Alternatively, Gruppo Di Maio operates a bus from Olten Station to Arese twice a week. Tickets cost €28–40 and the journey takes 6h 40m.
- Website
- lufthansa.com
Flights from Basel to Milan Linate Airport via Munich
- Ave. Duration
- 4h
- When
- Every day
- Estimated price
- €100–280
Flights from Basel to Milan Linate Airport via Frankfurt
- Ave. Duration
- 3h 47m
- When
- Every day
- Estimated price
- €100–280
- Website
- swiss.com
Flights from Zurich Airport to Milano Malpensa Airport
- Ave. Duration
- 55 min
- When
- Every day
- Estimated price
- €70–210
- Website
- easyjet.com
Flights from Basel to Milan Linate Airport via Split
- Ave. Duration
- 4h 30m
- When
- Sunday
- Estimated price
- €100–270
Flights from Basel to Milan Linate Airport via Figari
- Ave. Duration
- 5h
- When
- Wednesday
- Estimated price
- €100–270
- Website
- airfrance.com
Flights from Basel to Milan Linate Airport via Paris Charles de Gaulle
- Ave. Duration
- 5h 55m
- When
- Monday, Tuesday, Wednesday, Thursday, Saturday, and Sunday
- Estimated price
- €60–350
- Website
- ethiopianairlines.com
Flights from Zurich Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €55–200
- Website
- austrian.com
Flights from Basel to Milan Linate Airport via Vienna
- Ave. Duration
- 3h 50m
- When
- Monday to Saturday
- Estimated price
- €90–370
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Olten to Lugano
- Ave. Duration
- 2h 28m
- Frequency
- Every 3 hours
- Estimated price
- €75–220
- Website
- https://www.sbb.ch/en
Train from Como S.Giovanni to Milano Porta Garibaldi
- Ave. Duration
- 1h 2m
- Frequency
- Once daily
- Estimated price
- €16–50
- Website
- https://www.sbb.ch/en
Train from Oensingen to Zürich HB
- Ave. Duration
- 45 min
- Frequency
- Hourly
- Estimated price
- €25–75
- Website
- https://www.sbb.ch/en
Train from Zürich HB to Como S. Giovanni
- Ave. Duration
- 2h 35m
- Frequency
- Every 2 hours
- Estimated price
- €70–210
- Website
- https://www.sbb.ch/en
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
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/
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/
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Zürich to Milano, Autostazione Lampugnano
- Ave. Duration
- 3h 35m
- Frequency
- 4 times a day
- Estimated price
- €17–35
- Website
- https://www.blablacar.co.uk/bus
- Phone
- +39 0827 34 117
- info@gruppodimaio.it
- Website
- gruppodimaio.it
Bus from Olten Station to Arese
- Ave. Duration
- 6h 40m
- Frequency
- Twice a week
- Estimated price
- €28–40
- Schedules at
- gruppodimaio.it
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
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
Italian Lakes: Getting around by train
Read the travel guide
More Questions & Answers
Book your Balsthal to Milan train tickets online with Omio.
There are 13753+ hotels available in Milan.


















