There are 11 ways to get from Swiss Alps to Barcelona by train, plane, train (TGV, Renfe), bus, or car
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 Zurich Airport, fly
best- Take the train from Airolo to Zürich HBtrain
- Fly from Zurich Airport (ZRH) to Barcelona–El Prat Airport (BCN)plane ZRH - BCN
8h 8m€92–267Train, train to Milano Malpensa Airport, fly
cheapest- Take the train from Airolo to Bellinzonatrain
- Take the train from Bellinzona to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Barcelona–El Prat Airport (BCN)plane MXP - BCN
8h 51m€33–158Train
- Take the train from Airolo to Zürich HBtrain
- Take the train from Zürich HB to Mulhousetrain Tgv
- Take the train from Mulhouse Ville to Lyon Part Dieutrain Tgv
- Take the train from Lyon Part Dieu to Barcelona-Santstrain
15h 37m€238–379Train, bus via Bellinzona
- Take the train from Airolo to Castione-Arbedotrain
- Take the bus from Bellinzona to Milanbus
- Take the bus from Milan to Barcelonabus
19h 16m€102–198Drive 981.6 km
- Drive from Swiss Alps to Barcelonacar 981.6 km
10h 44m€178–256Train, train to Basel, fly
- Take the train from Airolo to Arth-Goldautrain
- Take the train from Arth-Goldau to Basel SBBtrain
- Fly from Basel (BSL) to Barcelona–El Prat Airport (BCN)plane BSL - BCN
9h 20m€78–309Train, bus to Il Caravaggio International Airport, fly
- Take the train from Airolo to Bellinzonatrain
- Take the train from Lugano to Milano Centraletrain
- Take the bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airportbus
- Fly from Il Caravaggio International Airport (BGY) to Barcelona–El Prat Airport (BCN)plane BGY - BCN
9h 34m€75–321Train, train to Milan Linate Airport, fly
- Take the train from Airolo to Cadenazzotrain
- Take the train from Cadenazzo to Monzatrain
- Fly from Milan Linate Airport (LIN) to Barcelona–El Prat Airport (BCN)plane LIN - BCN
9h 43m€69–241Train, train to Turin Caselle Airport, fly
- Take the train from Airolo to Cadenazzotrain
- Take the train from Cadenazzo to Milano Centraletrain
- Take the train from Milano Centrale to Torino Porta di Susatrain
- Fly from Turin Caselle Airport (TRN) to Barcelona–El Prat Airport (BCN)plane TRN - BCN
10h 50m€98–279Drive, bus
- Drive from Swiss Alps to Ponte Formazzacar
- Take the bus from Domodossola to Rho Fiera Milanobus Re4
- Take the bus from Milan to Barcelonabus
21h 4mTrain, bus
- Take the train from Airolo to Malpensa Aeroporto T2train S50
- Take the bus from Milan to Milano, Autostazione Lampugnanobus 474 / ...
- Take the bus from Milano, Autostazione Lampugnano to Barcelona - North Bus Stationbus
21h 49m€92–155
Swiss Alps to Barcelona by bus and train
Comparing Your Travel Options
The cheapest way to get from Swiss Alps to Barcelona is to train and fly which costs €30 - €160 and takes 8h 51m.
The fastest way to get from Swiss Alps to Barcelona is to train and fly which takes 8h 8m and costs €90 - €270.
No, there is no direct train from Swiss Alps to Barcelona. However, there are services departing from Airolo and arriving at Barcelona-Sants via Zürich HB, Mulhouse Ville and Lyon Part Dieu. The journey, including transfers, takes approximately 15h 37m.
The distance between Swiss Alps and Barcelona is 1016 km. The road distance is 981.6 km.
The best way to get from Swiss Alps to Barcelona without a car is to train which takes 15h 37m and costs €230 - €380.
It takes approximately 8h 8m to get from Swiss Alps to Barcelona, including transfers.
Swiss Alps to Barcelona train services, operated by Schweizerische Südostbahn AG, depart from Airolo station.
Swiss Alps to Barcelona train services, operated by Schweizerische Südostbahn AG, arrive at Zürich HB station.
Yes, the driving distance between Swiss Alps to Barcelona is 982 km. It takes approximately 10h 44m to drive from Swiss Alps to Barcelona.
There are 4801+ hotels available in Barcelona.
What companies run services between Swiss Alps, Canton Ticino, Switzerland and Barcelona, Spain?
You can take a bus from Gotthard Passhöhe to Barcelona-Sants via Airolo, Stazione, Airolo, Zürich HB, Mulhouse, Mulhouse Ville, and Lyon Part Dieu in around 15h 37m.
- Website
- ryanair.com
Flights from Milano Malpensa Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 35m
- When
- Sunday, Monday, Thursday, Saturday, and Friday
- Estimated price
- €21–55
Flights from Milano Malpensa Airport to Barcelona–El Prat Airport via Palma Mallorca
- Ave. Duration
- 4h 10m
- When
- Monday and Tuesday
- Estimated price
- €21–55
Flights from Il Caravaggio International Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- €29–180
Flights from Il Caravaggio International Airport to Barcelona–El Prat Airport via Ibiza
- Ave. Duration
- 4h 10m
- When
- Tuesday
- Estimated price
- €29–180
Flights from Turin Caselle Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- €30–210
- Website
- vueling.com
Flights from Zurich Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 52m
- When
- Every day
- Estimated price
- €45–170
Flights from Zurich Airport to Barcelona–El Prat Airport via Palma Mallorca
- Ave. Duration
- 4h 15m
- When
- Thursday
- Estimated price
- €45–170
Flights from Milano Malpensa Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 40m
- When
- Every day
- Estimated price
- €18–100
Flights from Basel to Barcelona–El Prat Airport
- Ave. Duration
- 1h 45m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- €40–180
Flights from Turin Caselle Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 28m
- When
- Every day
- Estimated price
- €17–110
- Website
- easyjet.com
Flights from Milano Malpensa Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 37m
- When
- Every day
- Estimated price
- €15–95
Flights from Basel to Barcelona–El Prat Airport
- Ave. Duration
- 1h 43m
- When
- Every day
- Estimated price
- €30–170
Flights from Milan Linate Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 36m
- When
- Every day
- Estimated price
- €26–130
- Website
- swiss.com
Flights from Zurich Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 46m
- When
- Every day
- Estimated price
- €55–180
- Website
- flyulendo.com
Flights from Milano Malpensa Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 40m
- When
- Every day
- Estimated price
- €15–110
Flights from Turin Caselle Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- €11–80
- Website
- airfrance.com
Flights from Basel to Barcelona–El Prat Airport via Paris Charles de Gaulle
- Ave. Duration
- 4h 10m
- When
- Monday, Tuesday, and Sunday
- Estimated price
- €55–300
- Phone
- +41 58 580 70 70
- Website
- Schweizerische Südostbahn AG
Train from Airolo to Zürich HB
- Ave. Duration
- 1h 58m
- Frequency
- Every 4 hours
- Estimated price
- €40–60
- Schedules at
- Schweizerische Südostbahn AG
Train from Airolo to Zürich HB
- Ave. Duration
- 1h 58m
- Frequency
- Every 4 hours
- Estimated price
- €40–60
- Schedules at
- Schweizerische Südostbahn AG
Train from Airolo to Castione-Arbedo
- Ave. Duration
- 53 min
- Frequency
- Hourly
- Estimated price
- €24–40
- Schedules at
- Schweizerische Südostbahn AG
Train from Airolo to Bellinzona
- Ave. Duration
- 58 min
- Frequency
- Hourly
- Estimated price
- €25–40
- Schedules at
- Schweizerische Südostbahn AG
Train from Airolo to Arth-Goldau
- Ave. Duration
- 1h 10m
- Frequency
- Hourly
- Estimated price
- €28–45
- Schedules at
- Schweizerische Südostbahn AG
Train from Arth-Goldau to Basel SBB
- Ave. Duration
- 1h 40m
- Frequency
- Every 4 hours
- Estimated price
- €35–60
- Schedules at
- Schweizerische Südostbahn AG
Train from Airolo to Bellinzona
- Ave. Duration
- 58 min
- Frequency
- Hourly
- Estimated price
- €25–40
- Schedules at
- Schweizerische Südostbahn AG
Train from Airolo to Cadenazzo
- Ave. Duration
- 1h 10m
- Frequency
- Hourly
- Estimated price
- €27–40
- Schedules at
- Schweizerische Südostbahn AG
Train from Airolo to Cadenazzo
- Ave. Duration
- 1h 10m
- Frequency
- Hourly
- Estimated price
- €27–40
- Schedules at
- Schweizerische Südostbahn AG
Train from Zürich HB to Mulhouse
- Ave. Duration
- 1h 19m
- Frequency
- Every 4 hours
- Estimated price
- €45–75
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Airolo to Castione-Arbedo
- Ave. Duration
- 53 min
- Frequency
- Twice daily
- Estimated price
- €23–40
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Airolo to Bellinzona
- Ave. Duration
- 57 min
- Frequency
- Twice daily
- Estimated price
- €24–40
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Arth-Goldau to Basel SBB
- Ave. Duration
- 1h 40m
- Frequency
- Every 3 hours
- Estimated price
- €40–70
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Airolo to Bellinzona
- Ave. Duration
- 57 min
- Frequency
- Twice daily
- Estimated price
- €24–40
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Lugano to Milano Centrale
- Ave. Duration
- 1h 15m
- Frequency
- Hourly
- Estimated price
- €28–45
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Cadenazzo to Milano Centrale
- Ave. Duration
- 1h 38m
- Frequency
- Hourly
- Estimated price
- €35–60
- Website
- Swiss Federal Railways (SBB CFF FFS)
- Phone
- +33 1 84 94 36 35
- Website
- TGV inOui
Train from Mulhouse Ville to Lyon Part Dieu
- Ave. Duration
- 3h 7m
- Frequency
- Every 4 hours
- Estimated price
- €80–120
- Website
- TGV inOui
Rome2Rio's guide to Société Nationale des Chemins de fer Français (SNCF)
Contact DetailsContact Details
- Phone
- +33 1 84 94 36 35
- Website
- Oui.SNCF
Train from Mulhouse Ville to Lyon Part Dieu
- Ave. Duration
- 3h 20m
- Frequency
- Twice daily
- Estimated price
- €70–120
- Website
- Oui.SNCF
- Phone
- +34 91 232 03 20
- Website
- Renfe Viajeros
Train from Lyon Part Dieu to Barcelona-Sants
- Ave. Duration
- 4h 48m
- Frequency
- Twice daily
- Estimated price
- €80–120
- Website
- Renfe Viajeros
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- Trenord
Train from Airolo to Castione-Arbedo
- Ave. Duration
- 53 min
- Frequency
- Twice daily
- Estimated price
- €5–7
- Website
- Trenord
Train from Airolo to Bellinzona
- Ave. Duration
- 57 min
- Frequency
- Twice daily
- Estimated price
- €5–7
- Website
- Trenord
Train from Bellinzona to Malpensa Aeroporto T1
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €7–10
- Website
- Trenord
Train from Airolo to Bellinzona
- Ave. Duration
- 57 min
- Frequency
- Twice daily
- Estimated price
- €5–7
- Website
- Trenord
Train from Cadenazzo to Monza
- Ave. Duration
- 1h 27m
- Frequency
- Hourly
- Estimated price
- €6–9
- Website
- Trenord
Train from Airolo to Malpensa Aeroporto T2
- Ave. Duration
- 3h 9m
- Frequency
- 5 times a week
- Estimated price
- €11–15
- Website
- Trenord
- Phone
- +39 06 68475475
- [email protected]
- Website
- Trenitalia Eurocity
Train from Arth-Goldau to Basel SBB
- Ave. Duration
- 1h 40m
- Frequency
- 4 times a day
- Estimated price
- €30–75
- Website
- Trenitalia Eurocity
- 1st Class
- €50–75
- 2nd Class
- €30–45
- Phone
- +49 (0) 7531 915109
- [email protected]
- Website
- SBB GmbH
Train from Arth-Goldau to Basel SBB
- Ave. Duration
- 1h 41m
- Frequency
- Once daily
- Estimated price
- €10–14
- Schedules at
- SBB GmbH
- Phone
- +39 06 8937 1892
- Website
- Italo Treno
Train from Milano Centrale to Torino Porta di Susa
- Ave. Duration
- 48 min
- Frequency
- Hourly
- Estimated price
- €16–28
- Website
- Italo Treno
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Bellinzona to Milan
- Ave. Duration
- 1h 45m
- Frequency
- Once daily
- Estimated price
- €9–14
- Website
- Flixbus
Bus from Milan to Barcelona
- Ave. Duration
- 13h 45m
- Frequency
- 3 times a day
- Estimated price
- €85–140
- Website
- Flixbus
Bus from Milan to Barcelona
- Ave. Duration
- 13h 45m
- Frequency
- 3 times a day
- Estimated price
- €85–140
- Website
- Flixbus
Bus from Milan to Milano, Autostazione Lampugnano
- Ave. Duration
- 30 min
- Frequency
- Twice daily
- Estimated price
- €3–6
- Website
- Flixbus
- [email protected]
- Website
- TERRAVISION
Bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airport
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €5–23
- Website
- TERRAVISION
- Phone
- 035.319366
- [email protected]
- Website
- orioshuttle.com
Bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airport
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €11–15
- Schedules at
- orioshuttle.com
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- Trenord
Bus from Domodossola to Rho Fiera Milano
- Ave. Duration
- 1h 25m
- Frequency
- Every 2 hours
- Website
- Trenord
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from Milano, Autostazione Lampugnano to Barcelona - North Bus Station
- Ave. Duration
- 14h 45m
- Frequency
- 3 times a day
- Estimated price
- €75–130
- Website
- BlaBlaCar Bus
Want to know more about travelling around Spain
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
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
5 delightfully under-the-radar French towns you need to visit
Read the travel guide
Train travel in France: A guide to SNCF
Read the travel guide


































































