There are 11 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, fly to Milano Malpensa Airport
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 63–308Train
- Take the train from Oslo S to Malmö Centralstationtrain
- Take the train from Malmo C to Hamburg Hbftrain Ic
- Take the train from Hamburg Hbf to Basel SBBtrain Ec
- Take the train from Basel SBB to Bellinzonatrain Ec
24h 34mCHF 448–1,279Bus
- Take the bus from Oslo bussterminal to Malmo Norra Vallgatanbus 600 / ...
- Take the bus from Malmö central train station FlixBus stop to Nuremberg central bus stationbus N73
- Take the bus from Nuremberg central bus station to Chur station train stationbus
- Take the bus from Chur, Postautostation to Bellinzona, Stazionebus 171
37h 18mCHF 147–363Car ferry, train, night train
- Take the car ferry from Oslo Vipperangen to Port of Kielcarferry
- Take the train from Kiel Hbf to Hamburg Hbftrain Re7
- Take the night train from Hamburg Hbf to Zuerich Hbnighttrain Nj
- Take the train from Zürich HB to Locarnotrain
39h 1mCHF 322–771Train, fly to Zurich Airport
- 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 143–341Train, fly to Milan Linate Airport
- 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 52mCHF 118–375Train, fly to Geneva International Airport
- 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 225–633Train, fly to Il Caravaggio International Airport
- 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 train from Milano Centrale to Locarnotrain
8h 29mCHF 73–382Bus, 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 222–417Drive 2,087.3 km
- Drive from Oslo to Locarnocar 2,087.3 km
19h 33mCHF 349–504Drive, car train
- Drive from Oslo to Hamburg Hbfcar
- Take the car train from Hamburg Hbf to Lörrach Hbfcartrain
- Drive from Lörrach Hbf to Locarnocar
23h 28mCHF 307–426
Oslo to Locarno by train
Questions & Answers
The cheapest way to get from Oslo to Locarno is to train and fly which costs SFr 60 - SFr 310 and takes 7h 41m.
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 Malmö central train station FlixBus stop, Nuremberg central bus station, Chur, Postautostation and Bellinzona, Stazione. The journey, including transfers, takes approximately 37h 18m.
No, there is no direct train from Oslo to Locarno. However, there are services departing from Oslo S and arriving at Locarno via Malmo C, Hamburg Hbf, Basel SBB and Bellinzona. The journey, including transfers, takes approximately 24h 34m.
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 34m and costs SFr 440 - SFr 1300.
It takes approximately 7h 41m to get from Oslo to Locarno, including transfers.
Oslo to Locarno bus services, operated by Vy Buss, depart from Oslo bussterminal station.
Oslo to Locarno train services, operated by Norwegian Railways (VY), depart from Oslo S station.
The best way to get from Oslo to Locarno is to train which takes 24h 34m and costs SFr 440 - SFr 1300. Alternatively, you can bus, which costs SFr 140 - SFr 370 and takes 37h 18m.
What companies run services between Oslo, Norway and Locarno, Switzerland?
You can take a train from Oslo S to Locarno via Malmö Centralstation, Malmo C, Hamburg Hbf, Basel SBB, and Bellinzona in around 24h 34m. Alternatively, you can take a bus from Oslo bussterminal to Locarno, Debarcadero via Malmö central train station FlixBus stop, Nuremberg central bus station, Chur station train station, Chur, Postautostation, and Bellinzona, Stazione in around 37h 18m.
- Website
- flysas.com
Flights from Oslo Airport, Gardermoen to Milano Malpensa Airport
- Ave. Duration
- 2h 40m
- When
- Monday, Wednesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- CHF 50–270
Flights from Oslo Airport, Gardermoen to Milano Malpensa Airport via Copenhagen
- Ave. Duration
- 5h 9m
- When
- Every day
- Estimated price
- CHF 50–270
Flights from Oslo Airport, Gardermoen to Zurich Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- CHF 80–260
Flights from Oslo Airport, Gardermoen to Zurich Airport via Copenhagen
- Ave. Duration
- 4h 25m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- CHF 80–260
Flights from Oslo Airport, Gardermoen to Milan Linate Airport via Copenhagen
- Ave. Duration
- 5h 10m
- When
- Saturday and Sunday
- Estimated price
- CHF 65–450
Flights from Oslo Airport, Gardermoen to Geneva International Airport
- Ave. Duration
- 2h 35m
- When
- Saturday
- Estimated price
- CHF 75–180
Flights from Oslo Airport, Gardermoen to Geneva International Airport via Copenhagen
- Ave. Duration
- 4h 46m
- When
- Every day
- Estimated price
- CHF 75–180
- Website
- lufthansa.com
Flights from Oslo Airport, Gardermoen to Zurich Airport via Frankfurt
- Ave. Duration
- 4h 10m
- When
- Every day
- Estimated price
- CHF 85–330
Flights from Oslo Airport, Gardermoen to Milan Linate Airport via Frankfurt
- Ave. Duration
- 5h 6m
- When
- Every day
- Estimated price
- CHF 85–330
Flights from Oslo Airport, Gardermoen to Milan Linate Airport via Munich
- Ave. Duration
- 5h 45m
- When
- Every day
- Estimated price
- CHF 85–330
Flights from Oslo Airport, Gardermoen to Geneva International Airport via Frankfurt
- Ave. Duration
- 5h 15m
- When
- Every day
- Estimated price
- CHF 75–250
- Website
- norwegian.com
Flights from Oslo Airport, Gardermoen to Milano Malpensa Airport
- Ave. Duration
- 2h 40m
- When
- Every day
- Estimated price
- CHF 45–250
Flights from Oslo Airport, Gardermoen to Zurich Airport
- Ave. Duration
- 2h 20m
- When
- Thursday
- Estimated price
- CHF 60–210
Flights from Oslo Airport, Gardermoen to Geneva International Airport
- Ave. Duration
- 2h 30m
- When
- Thursday and Sunday
- Estimated price
- CHF 75–170
Flights from Oslo Airport, Gardermoen to Il Caravaggio International Airport
- Ave. Duration
- 2h 35m
- When
- Thursday and Sunday
- Estimated price
- CHF 60–230
Flights from Oslo Airport, Gardermoen to Il Caravaggio International Airport via Stavanger
- Ave. Duration
- 4h 25m
- When
- Wednesday
- Estimated price
- CHF 65–240
- 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 65–260
Flights from Oslo Airport, Gardermoen to Zurich Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- CHF 75–300
Flights from Oslo Airport, Gardermoen to Geneva International Airport via Zurich Airport
- Ave. Duration
- 4h 50m
- When
- Every day
- Estimated price
- CHF 75–180
- Website
- brusselsairlines.com
Flights from Oslo Airport, Gardermoen to Milan Linate Airport via Brussels
- Ave. Duration
- 5h 35m
- When
- Monday, Wednesday, Thursday, Friday, and Saturday
- Estimated price
- CHF 65–260
- Website
- norwegian.com
Flights from Oslo Airport, Gardermoen to Geneva International Airport via Copenhagen
- Ave. Duration
- 4h 10m
- When
- Saturday
- Estimated price
- CHF 45–210
- Phone
- +47 23 15 90 00
- flytoget@flytoget.no
- Website
- flytoget.no
Train from Oslo S to Oslo lufthavn stasjon
- Ave. Duration
- 22 min
- Frequency
- Every 10 minutes
- Estimated price
- CHF 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
- 23 min
- Frequency
- Every 20 minutes
- Estimated price
- CHF 9–14
- Website
- https://www.vy.no/en
- Book at
- https://www.vy.no/en/buy-tickets/train-and-bus-tickets
Train from Oslo S to Malmö Centralstation
- Ave. Duration
- 6h 13m
- Frequency
- 3 times a week
- Estimated price
- CHF 120–180
- Website
- https://www.vy.no/en
- Book at
- https://www.vy.no/en/buy-tickets/train-and-bus-tickets
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Malpensa Aeroporto T1 to Mendrisio
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- CHF 19–55
- Website
- https://www.sbb.ch/en
Train from Mendrisio to Locarno
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- CHF 17–50
- Website
- https://www.sbb.ch/en
Train from Hamburg Hbf to Basel SBB
- Ave. Duration
- 6h 41m
- Frequency
- Once a week
- Estimated price
- CHF 260–800
- Website
- https://www.sbb.ch/en
Train from Basel SBB to Bellinzona
- Ave. Duration
- 2h 38m
- Frequency
- Every 3 hours
- Estimated price
- CHF 75–220
- Website
- https://www.sbb.ch/en
Train from Zürich HB to Locarno
- Ave. Duration
- 2h 14m
- Frequency
- Twice a week
- Estimated price
- CHF 65–200
- Website
- https://www.sbb.ch/en
Train from Zürich HB to Bellinzona
- Ave. Duration
- 1h 39m
- Frequency
- Hourly
- Estimated price
- CHF 50–150
- Website
- https://www.sbb.ch/en
Train from Genève-Aéroport to Locarno
- Ave. Duration
- 5h 12m
- Frequency
- Once a week
- Estimated price
- CHF 140–400
- Website
- https://www.sbb.ch/en
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Malpensa Aeroporto T1 to Mendrisio
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- CHF 4–6
- Website
- https://www.trenord.it/en/
Train from Mendrisio to Locarno
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- CHF 4–6
- Website
- https://www.trenord.it/en/
Train from Monza to Locarno
- Ave. Duration
- 1h 45m
- Frequency
- Hourly
- Estimated price
- CHF 5–7
- Website
- https://www.trenord.it/en/
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 7–10
- Website
- https://www.trenord.it/en/
- Phone
- +46 40 669 62 00
- snalltaget@snalltaget.se
- Website
- snalltaget.se
Train from Malmo C to Hamburg Hbf
- Ave. Duration
- 5h 42m
- Frequency
- Once daily
- Estimated price
- CHF 45–80
- Website
- https://www.snalltaget.se/en
- Phone
- +41 58 580 70 70
- Website
- sob.ch
Train from Basel SBB to Bellinzona
- Ave. Duration
- 3h 56m
- Frequency
- Every 4 hours
- Estimated price
- CHF 55–85
- Schedules at
- sob.ch
Train from Zürich HB to Locarno
- Ave. Duration
- 3h 22m
- Frequency
- Every 4 hours
- Estimated price
- CHF 55–85
- Schedules at
- sob.ch
Train from Zürich HB to Bellinzona
- Ave. Duration
- 2h 55m
- Frequency
- Every 3 hours
- Estimated price
- CHF 45–70
- Schedules at
- sob.ch
- Phone
- +49 (0) 7531 915109
- info@sbb-deutschland.de
- Website
- sbb-deutschland.de
Train from Basel SBB to Bellinzona
- Ave. Duration
- 3h 5m
- Frequency
- Once daily
- Estimated price
- CHF 14–18
- Schedules at
- sbb-deutschland.de
- Phone
- +49 30 2970
- Website
- bahn.de
Train from Kiel Hbf to Hamburg Hbf
- Ave. Duration
- 1h 14m
- Frequency
- Every 30 minutes
- Estimated price
- CHF 21–30
- Website
- https://int.bahn.de/en
- Phone
- +49 30 311 682904
- Website
- bahn.de
Train from Kiel Hbf to Hamburg Hbf
- Ave. Duration
- 1h 6m
- Frequency
- Every 3 hours
- Estimated price
- CHF 18–45
- Website
- https://int.bahn.de/en
- Phone
- +43 51717
- Website
- nightjet.com
Night train from Hamburg Hbf to Zuerich Hb
- Ave. Duration
- 11h 54m
- Frequency
- Once daily
- Estimated price
- CHF 45–130
- Website
- https://www.nightjet.com/en/#/home
- Sleeper Carriage
- CHF 100–130
- Couchette Carriage
- CHF 75–90
- Seating Carriage
- CHF 45–60
- Phone
- +49 (0) 221 800 20 820
- info@urlaubs-express.de
- Website
- urlaubs-express.de
Car train from Hamburg Hbf to Lörrach Hbf
- Ave. Duration
- 10h
- Frequency
- Once a week
- Estimated price
- CHF 90–110
- Website
- https://urlaubs-express.de/?lang=en
- Phone
- +47 407 05070
- buss@vy.no
- Website
- vybuss.no
Bus from Oslo bussterminal to Malmo Norra Vallgatan
- Ave. Duration
- 7h 5m
- Frequency
- Hourly
- Estimated price
- CHF 90–170
- Website
- https://www.vybuss.com/
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- https://www.flixbus.fr
Bus from Oslo bussterminal to Malmo Norra Vallgatan
- Ave. Duration
- 7h 5m
- Frequency
- 4 times a day
- Estimated price
- CHF 35–60
- Website
- https://www.flixbus.co.uk
Bus from Malmö central train station FlixBus stop to Nuremberg central bus station
- Ave. Duration
- 18h 25m
- Frequency
- 4 times a week
- Estimated price
- CHF 70–130
- Website
- https://www.flixbus.co.uk
Bus from Nuremberg central bus station to Chur station train station
- Ave. Duration
- 5h 40m
- Frequency
- Once daily
- Estimated price
- CHF 27–50
- Website
- https://www.flixbus.co.uk
- Phone
- +41 (0)848 818 818
- info@postauto.ch
- Website
- postauto.ch
Bus from Chur, Postautostation to Bellinzona, Stazione
- Ave. Duration
- 2h 12m
- Frequency
- Hourly
- Estimated price
- CHF 9–14
- Website
- https://www.postauto.ch
- 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
- CHF 95–200
- Website
- https://www.sindbad.pl/en/home
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–140
- Website
- https://www.sindbad.pl/en/home
- Phone
- +45 99 56 19 00
- Website
- colorline.no
Car ferry from Oslo Vipperangen to Port of Kiel
- Ave. Duration
- 20h
- Frequency
- Once daily
- Estimated price
- CHF 194–397
- Website
- https://www.colorline.com/
- Car
- CHF 397
- No Car
- CHF 194
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
More Questions & Answers
Oslo to Locarno bus services, operated by Vy Buss, arrive at Malmo Norra Vallgatan station.
Oslo to Locarno train services, operated by Norwegian Railways (VY), arrive at Malmö Centralstation.
Yes, the driving distance between Oslo to Locarno is 2087 km. It takes approximately 19h 33m to drive from Oslo to Locarno.
Book your Oslo to Locarno train tickets online with Omio.
There are 1795+ hotels available in Locarno.


























































