There are 10 ways to get from Milan to Oslo by train, plane, train (Trenitalia), bus, night train, car ferry, 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 Milano Malpensa Airport, fly to Oslo Airport, Gardermoen, train
best- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Oslo Airport, Gardermoen (OSL)plane MXP - OSL
- Take the train from Oslo lufthavn stasjon to Oslo Strain
5h 50mkr 738–2,598Train
- Take the train from Milano Centrale to Mannheim Hbftrain Ec
- Take the train from Mannheim, Hauptbahnhof to Neumünstertrain 22
- Take the train from Neumünster to Malmö, Centralstationtrain Ic
- Take the train from Malmö Centralstation to Oslo Strain
26h 7mkr 3,545–5,113Bus
- Take the bus from Milan to Hamburg central bus stationbus FlixBus N24
- Take the bus from Hamburg, Zentraler Omnibusbahnhof to Oslo bussterminalbus N613
34h 43mkr 2,030–3,135Train, night train, car ferry
- Take the train from Milano Centrale to Zuerich Hbtrain Ec
- Take the nighttrain from Zuerich Hb to Hamburg Dammtornighttrain Nj
- Take the train from Hamburg Dammtor to Kiel Hbftrain Re7
- Take the carferry from Port of Kiel to Oslo Vipperangencarferry
38h 8mkr 3,729–7,631Fly Milan Linate Airport to Oslo Airport, Gardermoen, train
- Fly from Milan Linate Airport (LIN) to Oslo Airport, Gardermoen (OSL)plane LIN - OSL
- Take the train from Oslo lufthavn stasjon to Oslo Strain
7h 8mkr 1,361–3,164Train to Zurich Airport, fly to Oslo Airport, Gardermoen, train
- Take the train from Milano Centrale to Zuerich Hbtrain
- Fly from Zurich Airport (ZRH) to Oslo Airport, Gardermoen (OSL)plane ZRH - OSL
- Take the train from Oslo lufthavn stasjon to Oslo Strain
8h 18mkr 1,635–3,922Fly Milan Linate Airport to Sandefjord Airport, train
- Fly from Milan Linate Airport (LIN) to Sandefjord Airport (TRF)plane LIN - TRF
- Take the train from Sandefjord stasjon to Nationaltheatret stasjontrain
10h 56mkr 865–3,418Bus via Kunowice
- Take the bus from Milano, Autostazione Lampugnano to SŁUBICE, Port Świecko, Świecko 39bus
- Take the bus from Słubice to Oslo bussterminalbus
39h 20mkr 2,272–3,511Drive 2,167.9 km
- Drive from Milan to Oslocar 2,167.9 km
20h 26mkr 5,306–7,663Drive, car train
- Drive from Milan to Innsbruck Hauptbahnhofcar
- Take the cartrain from Innsbruck Hauptbahnhof to Hamburg-Harburgcartrain
- Drive from Hamburg-Harburg to Oslocar
25h 52mkr 4,341–6,170
Milan to Oslo by train
Comparing Your Travel Options
The cheapest way to get from Milan to Oslo is to train and fly which costs kr 700 - kr 2600 and takes 5h 50m.
The fastest way to get from Milan to Oslo is to train and fly which takes 5h 50m and costs kr 700 - kr 2600.
No, there is no direct bus from Milan to Oslo. However, there are services departing from Milano, Autostazione Lampugnano and arriving at Oslo bussterminal via Milan and Hamburg, Zentraler Omnibusbahnhof. The journey, including transfers, takes approximately 34h 43m.
No, there is no direct train from Milan to Oslo. However, there are services departing from Milano Centrale and arriving at Oslo S via Mannheim, Hauptbahnhof, Neumünster and Malmö Centralstation. The journey, including transfers, takes approximately 26h 7m.
The distance between Milan and Oslo is 1723 km. The road distance is 2167.9 km.
The best way to get from Milan to Oslo without a car is to train which takes 26h 7m and costs kr 3500 - kr 5500.
It takes approximately 5h 50m to get from Milan to Oslo, including transfers.
Milan to Oslo bus services, operated by FlixBus, depart from Milan station.
Milan to Oslo train services, operated by Trenitalia EuroCity, depart from Milano Centrale station.
The best way to get from Milan to Oslo is to train which takes 26h 7m and costs kr 3500 - kr 5500. Alternatively, you can bus, which costs kr 2000 - kr 3200 and takes 34h 43m.
What companies run services between Milan, Italy and Oslo, Norway?
You can take a train from Milano Centrale to Oslo S via Mannheim Hbf, Mannheim, Hauptbahnhof, Neumünster, Malmö, Centralstation, and Malmö Centralstation in around 26h 7m. Alternatively, you can take a bus from Milano, Autostazione Lampugnano to Oslo bussterminal via qt8 m1, Qt8, Lampugnano, Milan, and Hamburg, Zentraler Omnibusbahnhof in around 34h 43m.
- Website
- flysas.com
Flights from Milano Malpensa Airport to Oslo Airport, Gardermoen
- Ave. Duration
- 2h 40m
- When
- Saturday
- Estimated price
- kr 650–2,500
Flights from Milano Malpensa Airport to Oslo Airport, Gardermoen via Copenhagen
- Ave. Duration
- 5h 1m
- When
- Every day
- Estimated price
- kr 650–2,500
Flights from Milan Linate Airport to Oslo Airport, Gardermoen via Copenhagen
- Ave. Duration
- 5h 20m
- When
- Sunday
- Estimated price
- kr 800–3,200
Flights from Zurich Airport to Oslo Airport, Gardermoen
- Ave. Duration
- 2h 30m
- When
- Monday, Friday, and Sunday
- Estimated price
- kr 1,000–2,500
Flights from Zurich Airport to Oslo Airport, Gardermoen via Copenhagen
- Ave. Duration
- 4h 1m
- When
- Every day
- Estimated price
- kr 1,000–2,500
Flights from Milan Linate Airport to Sandefjord Airport via Copenhagen
- Ave. Duration
- 9h 17m
- When
- Sunday, Monday, Tuesday, Wednesday, Thursday, and Friday
- Estimated price
- kr 750–4,100
- Website
- lufthansa.com
Flights from Milano Malpensa Airport to Oslo Airport, Gardermoen via Frankfurt
- Ave. Duration
- 4h 25m
- When
- Every day
- Estimated price
- kr 800–2,900
Flights from Milano Malpensa Airport to Oslo Airport, Gardermoen via Munich
- Ave. Duration
- 4h 30m
- When
- Every day
- Estimated price
- kr 800–2,900
Flights from Milan Linate Airport to Oslo Airport, Gardermoen via Frankfurt
- Ave. Duration
- 5h 51m
- When
- Every day
- Estimated price
- kr 950–3,500
Flights from Milan Linate Airport to Oslo Airport, Gardermoen via Munich
- Ave. Duration
- 8h 5m
- When
- Every day
- Estimated price
- kr 950–3,500
Flights from Zurich Airport to Oslo Airport, Gardermoen via Frankfurt
- Ave. Duration
- 4h 11m
- When
- Every day
- Estimated price
- kr 850–3,000
Flights from Zurich Airport to Oslo Airport, Gardermoen via Munich
- Ave. Duration
- 4h 5m
- When
- Every day
- Estimated price
- kr 850–3,100
- Website
- norwegian.com
Flights from Milano Malpensa Airport to Oslo Airport, Gardermoen
- Ave. Duration
- 2h 40m
- When
- Monday, Tuesday, Thursday, Friday, and Sunday
- Estimated price
- kr 650–1,500
Flights from Zurich Airport to Oslo Airport, Gardermoen
- Ave. Duration
- 2h 20m
- When
- Friday
- Estimated price
- kr 750–2,000
- Website
- brusselsairlines.com
Flights from Milan Linate Airport to Oslo Airport, Gardermoen via Brussels
- Ave. Duration
- 6h 35m
- When
- Monday, Thursday, Sunday, Tuesday, Wednesday, and Friday
- Estimated price
- kr 650–2,800
- Website
- ryanair.com
Flights from Milan Linate Airport to Sandefjord Airport via Bari
- Ave. Duration
- 10h 42m
- When
- Sunday
- Estimated price
- kr 950–3,500
- Website
- ryanair.com
Flights from Milan Linate Airport to Sandefjord Airport via Manchester
- Ave. Duration
- 11h 47m
- When
- Tuesday and Thursday
- Estimated price
- kr 900–3,500
- Website
- swiss.com
Flights from Zurich Airport to Oslo Airport, Gardermoen
- Ave. Duration
- 2h 30m
- When
- Every day
- Estimated price
- kr 700–2,800
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- Trenord
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- kr 45–60
- Website
- Trenord
- Phone
- +47 23 15 90 00
- flytoget@flytoget.no
- Website
- Flytoget AS
Train from Oslo lufthavn stasjon to Oslo S
- Ave. Duration
- 22 min
- Frequency
- Every 15 minutes
- Estimated price
- kr 220–240
- Website
- Flytoget AS
Train from Oslo lufthavn stasjon to Oslo S
- Ave. Duration
- 22 min
- Frequency
- Every 15 minutes
- Estimated price
- kr 220–240
- Website
- Flytoget AS
Train from Oslo lufthavn stasjon to Oslo S
- Ave. Duration
- 22 min
- Frequency
- Every 15 minutes
- Estimated price
- kr 220–240
- Website
- Flytoget AS
- Phone
- +47 61 05 19 10
- tog@vy.no
- Website
- Norwegian Railways (VY)
Train from Oslo lufthavn stasjon to Oslo S
- Ave. Duration
- 23 min
- Frequency
- Every 30 minutes
- Estimated price
- kr 41
- Website
- Norwegian Railways (VY)
- Book at
- Norwegian Railways (VY)
Train from Malmö Centralstation to Oslo S
- Ave. Duration
- 6h 9m
- Frequency
- Once a week
- Estimated price
- kr 525
- Website
- Norwegian Railways (VY)
- Book at
- Norwegian Railways (VY)
Train from Oslo lufthavn stasjon to Oslo S
- Ave. Duration
- 23 min
- Frequency
- Every 30 minutes
- Estimated price
- kr 41
- Website
- Norwegian Railways (VY)
- Book at
- Norwegian Railways (VY)
Train from Oslo lufthavn stasjon to Oslo S
- Ave. Duration
- 23 min
- Frequency
- Every 30 minutes
- Estimated price
- kr 41
- Website
- Norwegian Railways (VY)
- Book at
- Norwegian Railways (VY)
Train from Sandefjord stasjon to Nationaltheatret stasjon
- Ave. Duration
- 1h 23m
- Frequency
- Hourly
- Estimated price
- kr 95
- Website
- Norwegian Railways (VY)
- Book at
- Norwegian Railways (VY)
- Phone
- +39 06 68475475
- ufficiogruppi@trenitalia.it
- Website
- Trenitalia Eurocity
Train from Milano Centrale to Mannheim Hbf
- Ave. Duration
- 6h 48m
- Frequency
- Twice daily
- Estimated price
- kr 1,300–1,900
- Website
- Trenitalia Eurocity
- 1st Class
- kr 1,300–1,900
- 2nd Class
- kr 1,300–1,700
Train from Milano Centrale to Zuerich Hb
- Ave. Duration
- 3h 18m
- Frequency
- Hourly
- Estimated price
- kr 600–1,100
- Website
- Trenitalia Eurocity
- 1st Class
- kr 750–1,100
- 2nd Class
- kr 600–800
Train from Milano Centrale to Zuerich Hb
- Ave. Duration
- 3h 18m
- Frequency
- Hourly
- Estimated price
- kr 600–1,100
- Website
- Trenitalia Eurocity
- 1st Class
- kr 750–1,100
- 2nd Class
- kr 600–800
- Phone
- +49 30 2970
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Mannheim, Hauptbahnhof to Neumünster
- Ave. Duration
- 5h 17m
- Frequency
- Every 4 hours
- Estimated price
- kr 1,100–2,100
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Hamburg Dammtor to Kiel Hbf
- Ave. Duration
- 1h 2m
- Frequency
- Every 4 hours
- Estimated price
- kr 170–340
- Website
- Deutsche Bahn Intercity (DB IC)
- Phone
- +46 40 669 62 00
- snalltaget@snalltaget.se
- Website
- Snälltåget
Train from Neumünster to Malmö, Centralstation
- Ave. Duration
- 4h 53m
- Frequency
- Once daily
- Estimated price
- kr 615
- Website
- Snälltåget
- Phone
- +43 (0) 51717
- Website
- Nightjet
Night train from Zuerich Hb to Hamburg Dammtor
- Ave. Duration
- 11h 3m
- Frequency
- 4 times a day
- Estimated price
- kr 550–1,500
- Website
- Nightjet
- Sleeper Carriage
- kr 1,100–1,500
- Couchette Carriage
- kr 850–1,000
- Seating Carriage
- kr 550–700
- Phone
- +49 30 2970
- Website
- Deutsche Bahn Regio (DB Regional)
Train from Hamburg Dammtor to Kiel Hbf
- Ave. Duration
- 1h 10m
- Frequency
- Every 30 minutes
- Estimated price
- kr 178
- Website
- Deutsche Bahn Regio (DB Regional)
- Phone
- +49 (0) 221 800 20 820
- info@urlaubs-express.de
- Website
- Urlaubs-Express (UEX)
Car train from Innsbruck Hauptbahnhof to Hamburg-Harburg
- Ave. Duration
- 11h 5m
- Frequency
- Once a week
- Estimated price
- kr 1,000–1,300
- Website
- Urlaubs-Express (UEX)
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- Flixbus
Bus from Milan to Hamburg central bus station
- Ave. Duration
- 17h 45m
- Frequency
- Once daily
- Estimated price
- kr 1,100–1,700
- Website
- Flixbus
Bus from Hamburg, Zentraler Omnibusbahnhof to Oslo bussterminal
- Ave. Duration
- 14h 50m
- Frequency
- Once daily
- Estimated price
- kr 900–1,400
- Website
- Flixbus
- Phone
- +48 77 443 44 44
- bilety@sindbad.pl
- Website
- Sindbad
Bus from Milano, Autostazione Lampugnano to SŁUBICE, Port Świecko, Świecko 39
- Ave. Duration
- 17h 20m
- Frequency
- Twice a week
- Estimated price
- kr 1,000–1,800
- Website
- Sindbad
Bus from Słubice to Oslo bussterminal
- Ave. Duration
- 21h
- Frequency
- Once a week
- Estimated price
- kr 1,200–1,800
- Website
- Sindbad
- Phone
- +45 99 56 19 00
- Website
- Color Line AS
Car ferry from Port of Kiel to Oslo Vipperangen
- Ave. Duration
- 20h
- Frequency
- Once daily
- Estimated price
- kr 2,400–4,700
- Website
- Color Line AS
- Car
- kr 4,700
- No Car
- kr 2,400
Want to know more about travelling around Norway
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
How to plan an amazing trip around Scandinavia
Read the travel guide
Italy Travel Guides
Read the travel guide
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
Booking & Getting There
Milan to Oslo bus services, operated by FlixBus, arrive at Hamburg central bus station.
Milan to Oslo train services, operated by Trenitalia EuroCity, arrive at Mannheim Hbf station.
Yes, the driving distance between Milan to Oslo is 2168 km. It takes approximately 20h 26m to drive from Milan to Oslo.
Book your Milan to Oslo train tickets online with Omio.
Book your Milan to Oslo bus tickets online with Omio.
There are 993+ hotels available in Oslo.














































