There are 10 ways to get from Barcelona to Ascona by plane, train, train (Renfe, Trenitalia), bus, car, or train (Renfe, TGV)
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly to Milano Malpensa Airport, train
best- Fly from Barcelona–El Prat Airport (BCN) to Milano Malpensa Airport (MXP)plane BCN - MXP
- Take the train from Malpensa Aeroporto T1 to Mendrisiotrain
- Take the train from Mendrisio to Locarnotrain
6h 59mCHF 53–172Bus, train
cheapest- Take the bus from Barcelona - North Bus Station to Milano, Autostazione Lampugnanobus BlaBlaCar Bus
- Take the train from Monza to Locarnotrain Re 80
19h 25mCHF 27–89Train
- Take the train from Barcelona-Sants to Lyon Part Dieutrain
- Take the train from Lyon Part Dieu to Milano Centraletrain Fr
- Take the train from Milano Centrale to Locarnotrain
13h 47mCHF 131–239Drive 962.9 km
- Drive from Barcelona to Asconacar 962.9 km
11h 18mCHF 152–219Fly to Zurich Airport, train
- Fly from Barcelona–El Prat Airport (BCN) to Zurich Airport (ZRH)plane BCN - ZRH
- Take the train from Zürich HB to Bellinzonatrain
7h 19mCHF 84–242Fly to Il Caravaggio International Airport, train
- Fly from Barcelona–El Prat Airport (BCN) to Il Caravaggio International Airport (BGY)plane BCN - BGY
- Take the train from Milano Centrale to Locarnotrain
7h 52mCHF 48–194Fly to Milan Linate Airport, train
- Fly from Barcelona–El Prat Airport (BCN) to Milan Linate Airport (LIN)plane BCN - LIN
- Take the train from Monza to Locarnotrain
7h 40mCHF 40–171Fly to Geneva International Airport, train
- Fly from Barcelona–El Prat Airport (BCN) to Geneva International Airport (GVA)plane BCN - GVA
- Take the train from Genève-Aéroport to Locarnotrain
10h 45mCHF 80–259Train via Geneva
- Take the train from Barcelona-Sants to Lyon Part Dieutrain
- Take the train from Lyon Part Dieu to Genevetrain Ter
- Take the train from Genève to Locarnotrain Ic
14h 26mCHF 134–264Bus
- Take the bus from Barcelona to Turinbus
- Take the bus from Torino to Novarabus
- Take the bus from Novara - Viale Ferrucci, 26 to Domodossola - Stazione Ferroviariabus 15
- Take the bus from Domodossola, stazione to Locarno, Stazionebus Ev
20h 46mCHF 41–110
Barcelona to Ascona by train and bus
Questions & Answers
The cheapest way to get from Barcelona to Ascona is to bus and train which costs SFr 27 - SFr 90 and takes 19h 25m.
The fastest way to get from Barcelona to Ascona is to fly and train which takes 6h 59m and costs SFr 50 - SFr 180.
No, there is no direct bus from Barcelona to Ascona. However, there are services departing from Barcelona and arriving at Ascona, Centro via Torino, Novara - Viale Ferrucci, 26, Domodossola, stazione and Locarno, Piazza Stazione. The journey, including transfers, takes approximately 20h 46m.
The distance between Barcelona and Ascona is 852 km. The road distance is 962.9 km.
The best way to get from Barcelona to Ascona without a car is to train which takes 13h 47m and costs SFr 130 - SFr 240.
It takes approximately 6h 59m to get from Barcelona to Ascona, including transfers.
Barcelona to Ascona bus services, operated by FlixBus, depart from Barcelona station.
The best way to get from Barcelona to Ascona is to train which takes 13h 47m and costs SFr 130 - SFr 240. Alternatively, you can bus, which costs SFr 40 - SFr 110 and takes 20h 46m.
Barcelona to Ascona bus services, operated by FlixBus, arrive at Turin station.
Yes, the driving distance between Barcelona to Ascona is 963 km. It takes approximately 11h 18m to drive from Barcelona to Ascona.
What companies run services between Barcelona, Spain and Ascona, Switzerland?
You can take a train from Barcelona-Sants to Ascona, Scuole via Lyon Part Dieu, Milano Centrale, Locarno, and Locarno, Piazza Stazione in around 13h 47m. Alternatively, you can take a bus from Barcelona to Ascona, Centro via Torino, Novara, Novara - Viale Ferrucci, 26, Domodossola, stazione, Locarno, Stazione, and Locarno, Piazza Stazione in around 20h 46m.
- Website
- ryanair.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 45m
- When
- Monday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- CHF 21–130
Flights from Barcelona–El Prat Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- CHF 29–120
Flights from Barcelona–El Prat Airport to Il Caravaggio International Airport via Palma Mallorca
- Ave. Duration
- 4h 25m
- When
- Saturday
- Estimated price
- CHF 29–120
- Website
- easyjet.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 42m
- When
- Monday, Wednesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- CHF 19–80
Flights from Barcelona–El Prat Airport to Milan Linate Airport
- Ave. Duration
- 1h 40m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- CHF 23–110
Flights from Barcelona–El Prat Airport to Geneva International Airport
- Ave. Duration
- 1h 42m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- CHF 25–120
- Website
- vueling.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 38m
- When
- Every day
- Estimated price
- CHF 17–90
Flights from Barcelona–El Prat Airport to Zurich Airport
- Ave. Duration
- 1h 53m
- When
- Every day
- Estimated price
- CHF 30–130
Flights from Barcelona–El Prat Airport to Geneva International Airport
- Ave. Duration
- 1h 37m
- When
- Every day
- Estimated price
- CHF 21–90
- Website
- swiss.com
Flights from Barcelona–El Prat Airport to Zurich Airport
- Ave. Duration
- 1h 46m
- When
- Every day
- Estimated price
- CHF 45–200
Flights from Barcelona–El Prat Airport to Geneva International Airport via Zurich Airport
- Ave. Duration
- 3h 46m
- When
- Every day
- Estimated price
- CHF 95–130
- Website
- ita-airways.com
Flights from Barcelona–El Prat Airport to Milan Linate Airport via Palma Mallorca
- Ave. Duration
- 4h 5m
- When
- Saturday
- Estimated price
- CHF 65–160
Flights from Barcelona–El Prat Airport to Milan Linate Airport via Rome
- Ave. Duration
- 4h 20m
- When
- Monday to Friday
- Estimated price
- CHF 65–160
- Website
- flyulendo.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 45m
- When
- Monday, Friday, Saturday, and Sunday
- Estimated price
- CHF 17–80
- Website
- singaporeair.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 35m
- When
- Wednesday, Thursday, and Sunday
- Estimated price
- CHF 45–110
- 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 6–9
- 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
- +41 848 446 688
- Website
- sbb.ch
Train from Malpensa Aeroporto T1 to Mendrisio
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- CHF 24–45
- Website
- https://www.sbb.ch/en
Train from Mendrisio to Locarno
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- CHF 19–23
- Website
- https://www.sbb.ch/en
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 35–70
- Website
- https://www.sbb.ch/en
Train from Zürich HB to Bellinzona
- Ave. Duration
- 1h 39m
- Frequency
- Hourly
- Estimated price
- CHF 30–65
- 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 50–130
- Website
- https://www.sbb.ch/en
Train from Genève to Locarno
- Ave. Duration
- 5h 3m
- Frequency
- Once a week
- Estimated price
- CHF 60–130
- Website
- https://www.sbb.ch/en
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Barcelona-Sants to Lyon Part Dieu
- Ave. Duration
- 5h 6m
- Frequency
- Once daily
- Estimated price
- CHF 45–65
- Website
- https://www.renfe.com/es/en
- Phone
- +39.06.5210550
- Website
- trenitalia.com
Train from Lyon Part Dieu to Milano Centrale
- Ave. Duration
- 4h 44m
- Frequency
- Twice daily
- Estimated price
- CHF 45–100
- Website
- https://www.trenitalia.com/en.html
- Phone
- +41 58 580 70 70
- info@sob.ch
- Website
- sob.ch
Train from Zürich HB to Bellinzona
- Ave. Duration
- 2h 55m
- Frequency
- Every 2 hours
- Schedules at
- sob.ch
- Phone
- +33 1 84 94 36 35
- Website
- track.effiliation.com
Train from Lyon Part Dieu to Geneve
- Ave. Duration
- 1h 57m
- Frequency
- Every 3 hours
- Estimated price
- CHF 23–35
- Website
- https://track.effiliation.com/servlet/effi.redir?id_compteur=23007591&url=https%3A%2F%2Fwww.sncf-connect.com%2Fen-en%2F
- Phone
- +33 1 84 94 36 35
- Website
- sncf-connect.com
Train from Lyon Part Dieu to Geneve
- Ave. Duration
- 1h 50m
- Frequency
- 5 times a week
- Estimated price
- CHF 30–65
- Website
- https://www.sncf-connect.com/en-en
- 2nd Class
- CHF 30–40
- 1st Class
- CHF 50–65
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Barcelona - North Bus Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 14h 55m
- Frequency
- Twice daily
- Estimated price
- CHF 27–65
- Website
- https://www.blablacar.co.uk/bus
- Phone
- +39 06 88 93 82 32
- Website
- itabus.it
Bus from Barcelona - North Bus Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 13h 30m
- Frequency
- 5 times a week
- Estimated price
- CHF 18–75
- Website
- https://www.itabus.it/en/home
Bus from Barcelona to Turin
- Ave. Duration
- 11h 30m
- Frequency
- 5 times a week
- Estimated price
- CHF 13–50
- Website
- https://www.itabus.it/en/home
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Barcelona to Turin
- Ave. Duration
- 11h 50m
- Frequency
- Twice daily
- Estimated price
- CHF 30–70
- Website
- https://www.flixbus.co.uk
- Phone
- +39 080 579 0211
- info@sitasudtrasporti.it
- Website
- sitasudtrasporti.it
Bus from Torino to Novara
- Ave. Duration
- 1h 5m
- Frequency
- Once daily
- Estimated price
- CHF 4–10
- Schedules at
- sitasudtrasporti.it
- 2nd Class
- CHF 4–7
- Phone
- +39 0321 472647
- info@stnnet.it
- Website
- stnnet.it
Bus from Novara - Viale Ferrucci, 26 to Domodossola - Stazione Ferroviaria
- Ave. Duration
- 2h 37m
- Frequency
- Once daily
- Estimated price
- CHF 8–10
- Schedules at
- stnnet.it
- Phone
- +41 (0)91 756 04 00
- fart@centovalli.ch
- Website
- centovalli.ch
Bus from Domodossola, stazione to Locarno, Stazione
- Ave. Duration
- 1h 54m
- Frequency
- Once daily
- Estimated price
- CHF 13–19
- Website
- Autolinee FART
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
Italy Travel Guides
Read the travel guide
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
More Questions & Answers
There are 2756+ hotels available in Ascona.























































