There are 12 ways to get from Oslo to Locarno by train, plane, bus, car ferry, 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 Milano Malpensa Airport, train
best- Take the train from Oslo S to Oslo lufthavn stasjontrain
- Fly from Oslo Airport, Gardermoen (OSL) to Milano Malpensa Airport (MXP)plane OSL - MXP
- Take the train from Malpensa Aeroporto T1 to Mendrisiotrain
- Take the train from Mendrisio to Locarnotrain
7h 41mCHF 67–361Train
- Take the train from Oslo S to København Htrain Ic
- Take the train from København H to Hamburg Hbftrain Ece / ...
- Take the train from Hamburg Hbf to Basel SBBtrain Ec
- Take the train from Basel SBB to Bellinzonatrain Ec
24h 19mCHF 344–661Bus
- Take the bus from Oslo bussterminal to Hamburg, Zentraler Omnibusbahnhofbus
- Take the bus from Hamburg central bus station to Zurich Bus Stationbus
- Take the bus from ZÜRICH, Carparkplatz am Sihlquai to Comobus
- Take the bus from Como to Bellinzonabus
34h 8mCHF 240–365Car ferry, train, night train
- Take the carferry from Oslo Vipperangen to Port of Kielcarferry
- Take the train from Kiel Hbf to Hamburg Dammtortrain Re7
- Take the nighttrain from Hamburg Dammtor to Zuerich Hbnighttrain Nj
- Take the train from Zürich HB to Locarnotrain
39h 13mCHF 322–701Train to Oslo Airport, Gardermoen, fly to Zurich Airport, train
- Take the train from Oslo S to Oslo lufthavn stasjontrain
- Fly from Oslo Airport, Gardermoen (OSL) to Zurich Airport (ZRH)plane OSL - ZRH
- Take the train from Zürich HB to Bellinzonatrain
7h 34mCHF 141–350Train to Oslo Airport, Gardermoen, fly to Milan Linate Airport, train
- Take the train from Oslo S to Oslo lufthavn stasjontrain
- Fly from Oslo Airport, Gardermoen (OSL) to Milan Linate Airport (LIN)plane OSL - LIN
- Take the train from Monza to Locarnotrain
9h 50mCHF 112–516Train to Oslo Airport, Gardermoen, fly to Il Caravaggio International Airport, bus, train
- Take the train from Oslo S to Oslo lufthavn stasjontrain
- Fly from Oslo Airport, Gardermoen (OSL) to Il Caravaggio International Airport (BGY)plane OSL - BGY
- Take the bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoiabus
- Take the train from Milano Centrale to Locarnotrain
8h 30mCHF 80–265Train to Oslo Airport, Gardermoen, fly to Geneva International Airport, train
- Take the train from Oslo S to Oslo lufthavn stasjontrain
- Fly from Oslo Airport, Gardermoen (OSL) to Geneva International Airport (GVA)plane OSL - GVA
- Take the train from Genève-Aéroport to Locarnotrain
11h 17mCHF 199–474Train to Sandefjord Airport, fly to Il Caravaggio International Airport, bus, train
- Take the train from Oslo S to Sandefjord stasjontrain
- Fly from Sandefjord Airport (TRF) to Il Caravaggio International Airport (BGY)plane TRF - BGY
- Take the bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoiabus
- Take the train from Milano Centrale to Locarnotrain
10h 24mCHF 79–369Bus, train
- Take the bus from Oslo bussterminal to Słubicebus
- Take the bus from SŁUBICE, Port Świecko, Świecko 39 to ZÜRICH, Carparkplatz am Sihlquaibus
- Take the train from Zürich HB to Locarnotrain
40h 49mCHF 231–385Drive 2,087.3 km
- Drive from Oslo to Locarnocar 2,087.3 km
19h 32mCHF 374–540Drive, car train
- Drive from Oslo to Hamburg Hbfcar
- Take the cartrain from Hamburg Hbf to Lörrach Hbfcartrain
- Drive from Lörrach Hbf to Locarnocar
23h 28mCHF 320–450
Oslo to Locarno by train
Comparing Your Travel Options
The cheapest way to get from Oslo to Locarno is to train and fly and bus which costs SFr 75 - SFr 270 and takes 8h 30m.
The fastest way to get from Oslo to Locarno is to train and fly which takes 7h 34m and costs SFr 140 - SFr 350.
No, there is no direct bus from Oslo to Locarno. However, there are services departing from Oslo bussterminal and arriving at Locarno, Debarcadero via Hamburg central bus station, ZÜRICH, Carparkplatz am Sihlquai, Como and Bellinzona, Piazza Orico. The journey, including transfers, takes approximately 34h 8m.
No, there is no direct train from Oslo to Locarno. However, there are services departing from Oslo S and arriving at Locarno via København H, Hamburg Hbf, Basel SBB and Bellinzona. The journey, including transfers, takes approximately 24h 19m.
The distance between Oslo and Locarno is 1787 km. The road distance is 2087.3 km.
The best way to get from Oslo to Locarno without a car is to train which takes 24h 19m and costs SFr 340 - SFr 700.
It takes approximately 7h 41m to get from Oslo to Locarno, including transfers.
Oslo to Locarno bus services, operated by FlixBus, depart from Oslo bussterminal station.
Oslo to Locarno train services, operated by Snälltåget, depart from Oslo S station.
The best way to get from Oslo to Locarno is to train which takes 24h 19m and costs SFr 340 - SFr 700. Alternatively, you can bus, which costs SFr 240 - SFr 370 and takes 34h 8m.
What companies run services between Oslo, Norway and Locarno, Switzerland?
You can take a train from Oslo S to Locarno via København H, Hamburg Hbf, Basel SBB, and Bellinzona in around 24h 19m. Alternatively, you can take a bus from Oslo bussterminal to Locarno, Debarcadero via Hamburg central bus station, ZÜRICH, Carparkplatz am Sihlquai, Como, Bellinzona, and Bellinzona, Piazza Orico in around 34h 8m.
- Website
- flysas.com
Flights from Oslo Airport, Gardermoen to Milano Malpensa Airport
- Ave. Duration
- 2h 40m
- When
- Monday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- CHF 55–650
Flights from Oslo Airport, Gardermoen to Milano Malpensa Airport via Copenhagen
- Ave. Duration
- 5h 9m
- When
- Every day
- Estimated price
- CHF 55–650
Flights from Oslo Airport, Gardermoen to Zurich Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- CHF 90–240
Flights from Oslo Airport, Gardermoen to Zurich Airport via Copenhagen
- Ave. Duration
- 4h 25m
- When
- Sunday, Monday, Tuesday, Wednesday, Thursday, and Friday
- Estimated price
- CHF 90–240
Flights from Oslo Airport, Gardermoen to Milan Linate Airport via Copenhagen
- Ave. Duration
- 5h 10m
- When
- Saturday and Sunday
- Estimated price
- CHF 100–500
Flights from Oslo Airport, Gardermoen to Geneva International Airport
- Ave. Duration
- 2h 35m
- When
- Saturday
- Estimated price
- CHF 70–300
Flights from Oslo Airport, Gardermoen to Geneva International Airport via Copenhagen
- Ave. Duration
- 4h 46m
- When
- Every day
- Estimated price
- CHF 70–300
- Website
- norwegian.com
Flights from Oslo Airport, Gardermoen to Milano Malpensa Airport
- Ave. Duration
- 2h 40m
- When
- Every day
- Estimated price
- CHF 65–190
Flights from Oslo Airport, Gardermoen to Zurich Airport
- Ave. Duration
- 2h 20m
- When
- Thursday and Sunday
- Estimated price
- CHF 65–170
Flights from Oslo Airport, Gardermoen to Il Caravaggio International Airport
- Ave. Duration
- 2h 35m
- When
- Thursday and Sunday
- Estimated price
- CHF 60–260
Flights from Oslo Airport, Gardermoen to Il Caravaggio International Airport via Stavanger
- Ave. Duration
- 4h 25m
- When
- Wednesday
- Estimated price
- CHF 65–270
Flights from Oslo Airport, Gardermoen to Il Caravaggio International Airport via Bergen
- Ave. Duration
- 4h 51m
- When
- Wednesday and Saturday
- Estimated price
- CHF 70–280
Flights from Oslo Airport, Gardermoen to Geneva International Airport
- Ave. Duration
- 2h 30m
- When
- Thursday and Sunday
- Estimated price
- CHF 60–310
- Website
- lufthansa.com
Flights from Oslo Airport, Gardermoen to Zurich Airport via Frankfurt
- Ave. Duration
- 4h 10m
- When
- Every day
- Estimated price
- CHF 85–300
Flights from Oslo Airport, Gardermoen to Milan Linate Airport via Frankfurt
- Ave. Duration
- 5h 6m
- When
- Every day
- Estimated price
- CHF 90–310
Flights from Oslo Airport, Gardermoen to Milan Linate Airport via Munich
- Ave. Duration
- 5h 43m
- When
- Every day
- Estimated price
- CHF 90–310
- Website
- swiss.com
Flights from Oslo Airport, Gardermoen to Milano Malpensa Airport via Zurich Airport
- Ave. Duration
- 4h 30m
- When
- Every day
- Estimated price
- CHF 60–250
Flights from Oslo Airport, Gardermoen to Zurich Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- CHF 70–280
Flights from Oslo Airport, Gardermoen to Geneva International Airport via Zurich Airport
- Ave. Duration
- 4h 50m
- When
- Every day
- Estimated price
- CHF 95–350
- Website
- ryanair.com
Flights from Sandefjord Airport to Il Caravaggio International Airport
- Ave. Duration
- 2h 35m
- When
- Friday to Saturday
- Estimated price
- CHF 60–300
- Website
- brusselsairlines.com
Flights from Oslo Airport, Gardermoen to Milan Linate Airport via Brussels
- Ave. Duration
- 5h 35m
- When
- Monday to Saturday
- Estimated price
- CHF 60–250
- Phone
- +47 23 15 90 00
- flytoget@flytoget.no
- Website
- Flytoget AS
Train from Oslo S to Oslo lufthavn stasjon
- Ave. Duration
- 22 min
- Frequency
- Every 15 minutes
- Estimated price
- CHF 19–21
- Website
- Flytoget AS
Train from Oslo S to Oslo lufthavn stasjon
- Ave. Duration
- 22 min
- Frequency
- Every 15 minutes
- Estimated price
- CHF 19–21
- Website
- Flytoget AS
Train from Oslo S to Oslo lufthavn stasjon
- Ave. Duration
- 22 min
- Frequency
- Every 15 minutes
- Estimated price
- CHF 19–21
- Website
- Flytoget AS
Train from Oslo S to Oslo lufthavn stasjon
- Ave. Duration
- 22 min
- Frequency
- Every 15 minutes
- Estimated price
- CHF 19–21
- Website
- Flytoget AS
Train from Oslo S to Oslo lufthavn stasjon
- Ave. Duration
- 22 min
- Frequency
- Every 15 minutes
- Estimated price
- CHF 19–21
- Website
- Flytoget AS
- Phone
- +47 61 05 19 10
- tog@vy.no
- Website
- Norwegian Railways (VY)
Train from Oslo S to Oslo lufthavn stasjon
- Ave. Duration
- 30 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 4
- Website
- Norwegian Railways (VY)
- Book at
- Norwegian Railways (VY)
Train from Oslo S to Oslo lufthavn stasjon
- Ave. Duration
- 30 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 4
- Website
- Norwegian Railways (VY)
- Book at
- Norwegian Railways (VY)
Train from Oslo S to Oslo lufthavn stasjon
- Ave. Duration
- 30 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 4
- Website
- Norwegian Railways (VY)
- Book at
- Norwegian Railways (VY)
Train from Oslo S to Oslo lufthavn stasjon
- Ave. Duration
- 30 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 4
- Website
- Norwegian Railways (VY)
- Book at
- Norwegian Railways (VY)
Train from Oslo S to Oslo lufthavn stasjon
- Ave. Duration
- 30 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 4
- Website
- Norwegian Railways (VY)
- Book at
- Norwegian Railways (VY)
Train from Oslo S to Sandefjord stasjon
- Ave. Duration
- 1h 30m
- Frequency
- Hourly
- Estimated price
- CHF 9
- Website
- Norwegian Railways (VY)
- Book at
- Norwegian Railways (VY)
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- Trenord
Train from Malpensa Aeroporto T1 to Mendrisio
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- CHF 4–6
- Website
- Trenord
Train from Mendrisio to Locarno
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- CHF 4–6
- Website
- Trenord
Train from Monza to Locarno
- Ave. Duration
- 1h 45m
- Frequency
- Hourly
- Estimated price
- CHF 5–7
- Website
- Trenord
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 7–10
- Website
- Trenord
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 7–10
- Website
- Trenord
Train from Malpensa Aeroporto T1 to Mendrisio
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- CHF 16–25
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Mendrisio to Locarno
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- CHF 15–22
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Hamburg Hbf to Basel SBB
- Ave. Duration
- 6h 41m
- Frequency
- Once a week
- Estimated price
- CHF 230–340
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Basel SBB to Bellinzona
- Ave. Duration
- 2h 38m
- Frequency
- Every 3 hours
- Estimated price
- CHF 65–95
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Zürich HB to Locarno
- Ave. Duration
- 2h 14m
- Frequency
- Twice a week
- Estimated price
- CHF 55–85
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Zürich HB to Bellinzona
- Ave. Duration
- 1h 39m
- Frequency
- Hourly
- Estimated price
- CHF 40–65
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Genève-Aéroport to Locarno
- Ave. Duration
- 5h 12m
- Frequency
- Once a week
- Estimated price
- CHF 120–180
- Website
- Swiss Federal Railways (SBB CFF FFS)
- Phone
- +46 40 669 62 00
- snalltaget@snalltaget.se
- Website
- Snälltåget
Train from Oslo S to København H
- Ave. Duration
- 6h 58m
- Frequency
- Once a week
- Estimated price
- CHF 60–130
- Website
- Snälltåget
Train from København H to Hamburg Hbf
- Ave. Duration
- 5h 17m
- Frequency
- Twice a week
- Estimated price
- CHF 45–95
- Website
- Snälltåget
- Phone
- +47 70 13 14 15
- kundehenv@dsb.dk
- Website
- Danish Railways
Train from København H to Hamburg Hbf
- Ave. Duration
- 4h 42m
- Frequency
- Every 3 hours
- Estimated price
- CHF 37
- Website
- Danish Railways
- Phone
- +41 58 580 70 70
- Website
- Schweizerische Südostbahn AG
Train from Basel SBB to Bellinzona
- Ave. Duration
- 3h 56m
- Frequency
- Every 4 hours
- Estimated price
- CHF 55–85
- Schedules at
- Schweizerische Südostbahn AG
Train from Zürich HB to Locarno
- Ave. Duration
- 3h 22m
- Frequency
- Every 4 hours
- Estimated price
- CHF 55–85
- Schedules at
- Schweizerische Südostbahn AG
Train from Zürich HB to Bellinzona
- Ave. Duration
- 2h 55m
- Frequency
- Every 3 hours
- Estimated price
- CHF 45–70
- Schedules at
- Schweizerische Südostbahn AG
Train from Zürich HB to Locarno
- Ave. Duration
- 3h 22m
- Frequency
- Every 4 hours
- Estimated price
- CHF 55–85
- Schedules at
- Schweizerische Südostbahn AG
- Phone
- +49 (0) 7531 915109
- info@sbb-deutschland.de
- Website
- SBB GmbH
Train from Basel SBB to Bellinzona
- Ave. Duration
- 3h 5m
- Frequency
- Once daily
- Estimated price
- CHF 14–19
- Schedules at
- SBB GmbH
- Phone
- +49 30 2970
- Website
- Deutsche Bahn Regio (DB Regional)
Train from Kiel Hbf to Hamburg Dammtor
- Ave. Duration
- 1h 11m
- Frequency
- Every 30 minutes
- Estimated price
- CHF 16–75
- Website
- Deutsche Bahn Regio (DB Regional)
- Phone
- +49 30 2970
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Kiel Hbf to Hamburg Dammtor
- Ave. Duration
- 1h 9m
- Frequency
- Twice daily
- Estimated price
- CHF 18–40
- Website
- Deutsche Bahn Intercity (DB IC)
- Phone
- +43 (0) 51717
- Website
- Nightjet
Night train from Hamburg Dammtor to Zuerich Hb
- Ave. Duration
- 12h 1m
- Frequency
- Twice daily
- Estimated price
- CHF 50–130
- Website
- Nightjet
- Sleeper Carriage
- CHF 100–130
- Couchette Carriage
- CHF 75–90
- Seating Carriage
- CHF 50–60
- Phone
- +49 (0) 221 800 20 820
- info@urlaubs-express.de
- Website
- Urlaubs-Express (UEX)
Car train from Hamburg Hbf to Lörrach Hbf
- Ave. Duration
- 10h
- Frequency
- Once a week
- Estimated price
- CHF 90–110
- Website
- Urlaubs-Express (UEX)
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- Flixbus
Bus from Oslo bussterminal to Hamburg, Zentraler Omnibusbahnhof
- Ave. Duration
- 14h 25m
- Frequency
- 5 times a week
- Estimated price
- CHF 70–120
- Website
- Flixbus
Bus from Hamburg central bus station to Zurich Bus Station
- Ave. Duration
- 13h
- Frequency
- Once daily
- Estimated price
- CHF 70–110
- Website
- Flixbus
- Phone
- +39 0362 185 0590
- info@onebus.it
- Website
- Onebus
Bus from ZÜRICH, Carparkplatz am Sihlquai to Como
- Ave. Duration
- 1h 56m
- Frequency
- Once a week
- Estimated price
- CHF 50–75
- Website
- Onebus
Bus from Como to Bellinzona
- Ave. Duration
- 25 min
- Frequency
- Once a week
- Estimated price
- CHF 40–60
- Website
- Onebus
- customerservices@terravision.eu
- Website
- TERRAVISION
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 4–21
- Website
- TERRAVISION
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 4–21
- Website
- TERRAVISION
- Phone
- 035.319366
- ticket@orioshuttle.com
- Website
- orioshuttle.com
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 10–14
- Schedules at
- orioshuttle.com
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 10–14
- Schedules at
- orioshuttle.com
- Phone
- +48 77 443 44 44
- bilety@sindbad.pl
- Website
- Sindbad
Bus from Oslo bussterminal to Słubice
- Ave. Duration
- 21h 50m
- Frequency
- Once a week
- Estimated price
- CHF 100–170
- Website
- Sindbad
Bus from SŁUBICE, Port Świecko, Świecko 39 to ZÜRICH, Carparkplatz am Sihlquai
- Ave. Duration
- 13h 30m
- Frequency
- 5 times a week
- Estimated price
- CHF 70–130
- Website
- Sindbad
- Phone
- +45 99 56 19 00
- Website
- Color Line AS
Car ferry from Oslo Vipperangen to Port of Kiel
- Ave. Duration
- 20h
- Frequency
- Once daily
- Estimated price
- CHF 202–412
- Website
- Color Line AS
- Car
- CHF 412
- No Car
- CHF 202
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
Italian Lakes: Getting around by train
Read the travel guide
How to plan an amazing trip around Scandinavia
Read the travel guide
Italy Travel Guides
Read the travel guide
Booking & Getting There
Oslo to Locarno bus services, operated by FlixBus, arrive at Hamburg, Zentraler Omnibusbahnhof station.
Oslo to Locarno train services, operated by Snälltåget, arrive at København H station.
Yes, the driving distance between Oslo to Locarno is 2087 km. It takes approximately 19h 32m to drive from Oslo to Locarno.
Book your Oslo to Locarno train tickets online with Omio.
There are 2852+ hotels available in Locarno.






























































