There are 10 ways to get from Oslo to Milan by train, plane, bus, night train, car, or car 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 to Oslo Airport, Gardermoen, fly to Milan Linate Airport
best- Take the train from Oslo S to Oslo lufthavn stasjon
- Fly from Oslo Airport, Gardermoen (OSL) to Milan Linate Airport (LIN)OSL - LIN
7h€72–233Train to Oslo Airport, Gardermoen, fly to Milano Malpensa Airport, train
cheapest- Take the train from Oslo S to Oslo lufthavn stasjon
- Fly from Oslo Airport, Gardermoen (OSL) to Milano Malpensa Airport (MXP)OSL - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
6h 3m€60–195Train
- Take the train from Oslo S to Göteborg Centralstation
- Take the train from Göteborg Centralstation to Hamburg Hbf
- Take the train from Hamburg Hbf to Basel SBB20 / ...
- Take the train from Basel SBB to LuganoEc
- Take the train from Lugano to Milano CentraleEc
28h 44m€228–603Bus
- Take the bus from Oslo bussterminal to Hamburg, Zentraler OmnibusbahnhofN613
- Take the bus from Hamburg, Zentraler Omnibusbahnhof to Milano, Autostazione LampugnanoN24
33h 5m€94–278Train, night train
- Take the train from Oslo S to Göteborg Centralstation
- Take the train from Göteborg Centralstation to København lufthavn stasjon
- Take the night train from Cph Lufthavn to Basel SbbEn
- Take the train from Basel SBB to LuganoEc
- Take the train from Como S.Giovanni to Milano Porta GaribaldiS11
30h 29mBus to Sandefjord Airport, fly to Milan Linate Airport
- Take the bus from Oslo bussterminal to Sandefjord lufthavn Torp
- Fly from Sandefjord Airport (TRF) to Milan Linate Airport (LIN)TRF - LIN
11h 8mBus to Sandefjord Airport, fly to Il Caravaggio International Airport
- Take the bus from Oslo bussterminal to Sandefjord lufthavn Torp
- Fly from Sandefjord Airport (TRF) to Il Caravaggio International Airport (BGY)TRF - BGY
7h 2mBus via Kunowice
- Take the bus from Oslo bussterminal to Słubice
- Take the bus from SŁUBICE, Port Świecko, Świecko 39 to Milano, Autostazione Lampugnano
39h 20m€172–221Drive 2,169.6 km
- Drive from Oslo to Milan2,169.6 km
20h 21m€396–572Drive, car train
- Drive from Oslo to Hamburg Hbf
- Take the car train from Hamburg Hbf to München Ost
- Drive from München Ost to Milan
21h 16m€359–1,180
Oslo to Milan by train
Questions & Answers
The cheapest way to get from Oslo to Milan is to train and fly which costs €60 - €200 and takes 6h 3m.
The fastest way to get from Oslo to Milan is to train and fly which takes 6h 3m and costs €60 - €200.
No, there is no direct bus from Oslo to Milan. However, there are services departing from Oslo bussterminal and arriving at Milano, Autostazione Lampugnano via Hamburg, Zentraler Omnibusbahnhof. The journey, including transfers, takes approximately 33h 5m.
No, there is no direct train from Oslo to Milan. However, there are services departing from Oslo S and arriving at Milano Centrale via Göteborg Centralstation, Hamburg Hbf, Basel SBB and Lugano. The journey, including transfers, takes approximately 28h 44m.
The distance between Oslo and Milan is 1697 km. The road distance is 2169.6 km.
The best way to get from Oslo to Milan without a car is to train which takes 28h 44m and costs €220 - €650.
It takes approximately 7h to get from Oslo to Milan, including transfers.
Oslo to Milan bus services, operated by FlixBus, depart from Oslo bussterminal station.
Oslo to Milan train services, operated by Norwegian Railways (VY), depart from Oslo S station.
The best way to get from Oslo to Milan is to train which takes 28h 44m and costs €220 - €650. Alternatively, you can bus, which costs €90 - €280 and takes 33h 5m.
What companies run services between Oslo, Norway and Milan, Italy?
You can take a train from Oslo S to Milano Centrale via Göteborg Centralstation, Hamburg Hbf, Basel SBB, and Lugano in around 28h 44m. Alternatively, you can take a bus from Oslo bussterminal to Milano, Autostazione Lampugnano via Hamburg, Zentraler Omnibusbahnhof in around 33h 5m.
- Website
- lufthansa.com
Flights from Oslo Airport, Gardermoen to Milan Linate Airport via Frankfurt
- Ave. Duration
- 5h 1m
- When
- Every day
- Estimated price
- €110–160
Flights from Oslo Airport, Gardermoen to Milan Linate Airport via Munich
- Ave. Duration
- 7h
- When
- Monday, Tuesday, Friday, Saturday, and Sunday
- Estimated price
- €110–160
Flights from Sandefjord Airport to Milan Linate Airport via Stavanger, Frankfurt
- Ave. Duration
- 7h 15m
- When
- Monday, Tuesday, and Friday
- Estimated price
- €90–360
Flights from Sandefjord Airport to Milan Linate Airport via Wroclaw, Munich
- Ave. Duration
- 9h 55m
- When
- Monday, Saturday, and Sunday
- Estimated price
- €65–230
Flights from Sandefjord Airport to Milan Linate Airport via Poznan, Munich
- Ave. Duration
- 10h 40m
- When
- Monday, Tuesday, and Saturday
- Estimated price
- €65–230
- Website
- flysas.com
Flights from Oslo Airport, Gardermoen to Milan Linate Airport via Copenhagen
- Ave. Duration
- 5h 15m
- When
- Sunday
- Estimated price
- €55–180
Flights from Oslo Airport, Gardermoen to Milano Malpensa Airport
- Ave. Duration
- 2h 45m
- When
- Monday, Tuesday, Friday, Saturday, and Sunday
- Estimated price
- €40–150
Flights from Oslo Airport, Gardermoen to Milano Malpensa Airport via Copenhagen
- Ave. Duration
- 4h 46m
- When
- Every day
- Estimated price
- €40–150
- Website
- easyjet.com
Flights from Oslo Airport, Gardermoen to Milan Linate Airport via Berlin Brandenburg
- Ave. Duration
- 4h 30m
- When
- Sunday
- Estimated price
- €65–240
Flights from Sandefjord Airport to Milan Linate Airport via Copenhagen
- Ave. Duration
- 9h 5m
- When
- Monday, Tuesday, Friday, and Sunday
- Estimated price
- €55–230
- Website
- klm.com
Flights from Sandefjord Airport to Milan Linate Airport via Stavanger, Amsterdam Schiphol
- Ave. Duration
- 9h 25m
- When
- Monday to Friday
- Estimated price
- €80–380
- Website
- ryanair.com
Flights from Sandefjord Airport to Il Caravaggio International Airport
- Ave. Duration
- 2h 35m
- When
- Tuesday, Wednesday, and Saturday
- Estimated price
- €55–190
Flights from Sandefjord Airport to Il Caravaggio International Airport via Wroclaw
- Ave. Duration
- 6h
- When
- Sunday
- Estimated price
- €55–200
- Website
- brusselsairlines.com
Flights from Oslo Airport, Gardermoen to Milan Linate Airport via Brussels
- Ave. Duration
- 5h 10m
- When
- Monday, Tuesday, Friday, and Saturday
- Estimated price
- €70–260
- Website
- norwegian.com
Flights from Oslo Airport, Gardermoen to Milano Malpensa Airport
- Ave. Duration
- 2h 40m
- When
- Monday, Thursday, Friday, and Sunday
- Estimated price
- €40–120
- Website
- swiss.com
Flights from Oslo Airport, Gardermoen to Milano Malpensa Airport via Zurich
- Ave. Duration
- 5h 5m
- When
- Every day
- Estimated price
- €60–240
- Phone
- 23 15 90 00
- flytoget@flytoget.no
- Website
- flytoget.no
Train from Oslo S to Oslo lufthavn stasjon
- Ave. Duration
- 22 min
- Frequency
- Every 15 minutes
- Estimated price
- €18–21
- Website
- https://flytoget.no/en/
- Phone
- +47 61 05 19 10
- tog@vy.no
- Website
- vy.no
Train from Oslo S to Oslo lufthavn stasjon
- Ave. Duration
- 30 min
- Frequency
- Every 20 minutes
- Estimated price
- €10–16
- Website
- https://www.vy.no/en
Train from Oslo S to Göteborg Centralstation
- Ave. Duration
- 3h 31m
- Frequency
- Every 4 hours
- Estimated price
- €55–80
- Website
- https://www.vy.no/en
- Phone
- +46 77 175 75 75
- kundservice@sj.se
- Website
- sj.se
Train from Göteborg Centralstation to Hamburg Hbf
- Ave. Duration
- 10h 4m
- Frequency
- Twice a week
- Estimated price
- €70–130
- Website
- https://www.sj.se/en/
- Phone
- +49 30 311 682904
- Website
- bahn.de
Train from Hamburg Hbf to Basel SBB
- Ave. Duration
- 7h 37m
- Frequency
- Hourly
- Estimated price
- €60–160
- Website
- https://int.bahn.de/en
- Phone
- +43 5 1717
- Website
- konzern.oebb.at
Train from Hamburg Hbf to Basel SBB
- Ave. Duration
- 10h 2m
- Frequency
- Once daily
- Estimated price
- €160–240
- Website
- https://konzern.oebb.at/en/
- 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 Lugano to Milano Centrale
- Ave. Duration
- 1h 15m
- Frequency
- Hourly
- Estimated price
- €23–45
- 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 22m
- Frequency
- Once daily
- Estimated price
- €20–25
- Schedules at
- sbb-deutschland.de
- Phone
- +46 771-77 77 1
- bokningssupporten@oresundstag.se
- Website
- oresundstag.se
Train from Göteborg Centralstation to København lufthavn stasjon
- Ave. Duration
- 3h 18m
- Frequency
- Hourly
- Estimated price
- €40–50
- Website
- https://www.oresundstag.se/en
- Website
- bahntouristikexpress.de
Night train from Cph Lufthavn to Basel Sbb
- Ave. Duration
- 15h 56m
- Frequency
- 3 times a week
- Schedules at
- bahntouristikexpress.de
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Como S.Giovanni to Milano Porta Garibaldi
- Ave. Duration
- 1h 6m
- Frequency
- Hourly
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 42 min
- Frequency
- Hourly
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
- Phone
- +39 02-72494949
- Website
- malpensaexpress.it
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 42 min
- Frequency
- Hourly
- Estimated price
- €15
- Website
- https://www.malpensaexpress.it/en/
- Phone
- +49 (0) 221 800 20 820
- info@urlaubs-express.de
- Website
- urlaubs-express.de
Car train from Hamburg Hbf to München Ost
- Ave. Duration
- 4h 37m
- Frequency
- Once daily
- Estimated price
- €100–800
- Website
- https://urlaubs-express.de/?lang=en
- Car Single Bed
- €390–440
- Car Compartment
- €700–800
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Oslo bussterminal to Hamburg, Zentraler Omnibusbahnhof
- Ave. Duration
- 14h 20m
- Frequency
- Once daily
- Estimated price
- €45–140
- Website
- https://www.flixbus.co.uk
Bus from Hamburg, Zentraler Omnibusbahnhof to Milano, Autostazione Lampugnano
- Ave. Duration
- 17h 45m
- Frequency
- Once daily
- Estimated price
- €45–140
- Website
- https://www.flixbus.co.uk
- Phone
- +47 46 84 20 36
- torp@unibuss.no
- Website
- torpekspressen.no
Bus from Oslo bussterminal to Sandefjord lufthavn Torp
- Ave. Duration
- 1h 40m
- Frequency
- Every 4 hours
- Schedules at
- torpekspressen.no
- Phone
- +48 801 22 33 44
- bilety@sindbad.pl
- Website
- sindbad.pl
Bus from Oslo bussterminal to Słubice
- Ave. Duration
- 21h 50m
- Frequency
- Once a week
- Estimated price
- €90–120
- Website
- https://www.sindbad.pl/en/home
Bus from SŁUBICE, Port Świecko, Świecko 39 to Milano, Autostazione Lampugnano
- Ave. Duration
- 16h 30m
- Frequency
- Twice a week
- Estimated price
- €80–110
- Website
- https://www.sindbad.pl/en/home
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
How to plan an amazing trip around Scandinavia
Read the travel guide
Getting to Milan from the airport
Read the travel guide
More Questions & Answers
Oslo to Milan bus services, operated by FlixBus, arrive at Hamburg, Zentraler Omnibusbahnhof station.
Oslo to Milan train services, operated by Norwegian Railways (VY), arrive at Göteborg Centralstation.
Yes, the driving distance between Oslo to Milan is 2170 km. It takes approximately 20h 21m to drive from Oslo to Milan.
Book your Oslo to Milan train tickets online with Omio.
Book your Oslo to Milan bus tickets online with Omio and FlixBus.
There are 13465+ hotels available in Milan.














































