There are 11 ways to get from Locarno to Madrid by train, plane, train (Trenitalia, Renfe, Ouigo), bus, car, or train (Trenitalia, TGV, Renfe)
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train, train to Milano Malpensa Airport, fly
best- Take the train from Locarno to Mendrisiotrain
- Take the train from Mendrisio to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane MXP - MAD
7h 4m€34–244Train via Barcelona
- Take the train from Locarno to Milano Centraletrain
- Take the train from Milano Centrale to Lyon Part Dieutrain Fr
- Take the train from Lyon Part Dieu to Barcelona-Santstrain
- Take the train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandestrain Ave
16h 42m€217–412Bus
- Take the bus from Bellinzona to Milanbus FlixBus 076
- Take the bus from Milan to Madridbus FlixBus N1138
27h 57m€158–245Drive 1,521.9 km
- Drive from Locarno to Madridcar 1,521.9 km
16h 58m€275–397Train to Milan Linate Airport, fly
- Take the train from Locarno to Monzatrain
- Fly from Milan Linate Airport (LIN) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane LIN - MAD
7h 25m€80–225Train, bus to Il Caravaggio International Airport, fly
- Take the train from Locarno 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 Adolfo Suárez Madrid–Barajas Airport (MAD)plane BGY - MAD
7h 38m€98–352Train to Zurich Airport, fly
- Take the train from Bellinzona to Zürich HBtrain
- Fly from Zurich Airport (ZRH) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane ZRH - MAD
7h 27m€127–359Train, train to Turin Caselle Airport, fly
- Take the train from Locarno to Milano Centraletrain
- Take the train from Milano Centrale to Torino Porta di Susatrain
- Fly from Turin Caselle Airport (TRN) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane TRN - MAD
8h 41m€106–300Train, train to Geneva International Airport, fly
- Take the train from Locarno FART to Domodossolatrain
- Take the train from Brig to Genève-Aéroporttrain
- Fly from Geneva International Airport (GVA) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane GVA - MAD
10h 37m€148–397Train
- Take the train from Locarno to Milano Centraletrain
- Take the train from Milano Centrale to Ventimigliatrain Ic
- Take the train from Nice Ville to Marseille St Charlestrain Tgv
- Take the train from Marseille St Charles to Madrid-Puerta de Atocha-Almudena Grandestrain
20h 42m€266–424Train, bus
- Take the train from Locarno to Milano Centraletrain
- Take the bus from Milano, Autostazione Lampugnano to Marseille - Saint-Charles Bus Stationbus
- Take the bus from Marseille - Saint-Charles Bus Station to Estación Sur de Autobusesbus
29h 45m€169–297
Locarno to Madrid by train
Comparing Your Travel Options
The cheapest way to get from Locarno to Madrid is to train and fly which costs €30 - €250 and takes 7h 4m.
The fastest way to get from Locarno to Madrid is to train and fly which takes 7h 4m and costs €30 - €250.
No, there is no direct bus from Locarno to Madrid. However, there are services departing from Locarno, Debarcadero and arriving at Madrid via Bellinzona, Stazione, Bellinzona and Milan. The journey, including transfers, takes approximately 27h 57m.
No, there is no direct train from Locarno to Madrid. However, there are services departing from Locarno and arriving at Madrid-Puerta de Atocha-Almudena Grandes via Milano Centrale, Lyon Part Dieu and Barcelona-Sants. The journey, including transfers, takes approximately 16h 42m.
The distance between Locarno and Madrid is 1271 km. The road distance is 1521.9 km.
The best way to get from Locarno to Madrid without a car is to train via Barcelona which takes 16h 42m and costs €210 - €420.
It takes approximately 7h 4m to get from Locarno to Madrid, including transfers.
Locarno to Madrid bus services, operated by FlixBus, depart from Bellinzona station.
Locarno to Madrid train services, operated by Swiss Federal Railways (SBB CFF FFS), depart from Locarno station.
The best way to get from Locarno to Madrid is to train via Barcelona which takes 16h 42m and costs €210 - €420. Alternatively, you can bus, which costs €150 - €250 and takes 27h 57m.
What companies run services between Locarno, Switzerland and Madrid, Spain?
You can take a train from Locarno to Madrid-Puerta de Atocha-Almudena Grandes via Milano Centrale, Lyon Part Dieu, and Barcelona-Sants in around 16h 42m. Alternatively, you can take a bus from Locarno, Debarcadero to Madrid via Bellinzona, Stazione, Castione, Stazione, Bellinzona, and Milan in around 27h 57m.
- Website
- ryanair.com
Flights from Milano Malpensa Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 19m
- When
- Every day
- Estimated price
- €35–160
Flights from Il Caravaggio International Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- €50–250
Flights from Il Caravaggio International Airport to Adolfo Suárez Madrid–Barajas Airport via Palma Mallorca
- Ave. Duration
- 5h 20m
- When
- Wednesday, Saturday, and Monday
- Estimated price
- €50–250
Flights from Turin Caselle Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- €50–190
- Website
- iberia.com
Flights from Milano Malpensa Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 22m
- When
- Every day
- Estimated price
- €45–240
Flights from Milan Linate Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €55–170
Flights from Zurich Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €65–180
Flights from Zurich Airport to Adolfo Suárez Madrid–Barajas Airport via Barcelona
- Ave. Duration
- 4h 47m
- When
- Every day
- Estimated price
- €75–210
Flights from Turin Caselle Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- €55–130
Flights from Turin Caselle Airport to Adolfo Suárez Madrid–Barajas Airport via Barcelona
- Ave. Duration
- 4h 5m
- When
- Wednesday, Friday, Sunday, Monday, and Tuesday
- Estimated price
- €70–180
Flights from Geneva International Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 5m
- When
- Every day
- Estimated price
- €60–160
Flights from Geneva International Airport to Adolfo Suárez Madrid–Barajas Airport via Barcelona
- Ave. Duration
- 3h 50m
- When
- Sunday
- Estimated price
- €65–460
- Website
- vueling.com
Flights from Milano Malpensa Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 21m
- When
- Every day
- Estimated price
- €45–240
Flights from Milan Linate Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €55–170
Flights from Zurich Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €65–180
Flights from Zurich Airport to Adolfo Suárez Madrid–Barajas Airport via Barcelona
- Ave. Duration
- 4h 47m
- When
- Every day
- Estimated price
- €75–210
Flights from Turin Caselle Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- €55–130
Flights from Turin Caselle Airport to Adolfo Suárez Madrid–Barajas Airport via Barcelona
- Ave. Duration
- 4h 5m
- When
- Wednesday, Friday, Sunday, Monday, and Tuesday
- Estimated price
- €70–180
Flights from Geneva International Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 5m
- When
- Every day
- Estimated price
- €60–160
Flights from Geneva International Airport to Adolfo Suárez Madrid–Barajas Airport via Barcelona
- Ave. Duration
- 3h 50m
- When
- Sunday
- Estimated price
- €65–460
- Website
- aireuropa.com
Flights from Milano Malpensa Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 23m
- When
- Every day
- Estimated price
- €45–190
Flights from Zurich Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €65–200
Flights from Geneva International Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 57m
- When
- Every day
- Estimated price
- €45–210
- Website
- flyulendo.com
Flights from Milano Malpensa Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 33m
- When
- Every day
- Estimated price
- €20–150
Flights from Turin Caselle Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 20m
- When
- Monday, Wednesday, and Friday
- Estimated price
- €21–180
- Website
- swiss.com
Flights from Zurich Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €75–230
- Website
- easyjet.com
Flights from Geneva International Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 10m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- €35–220
Train from Locarno to Mendrisio
- Ave. Duration
- 56 min
- Frequency
- Hourly
- Estimated price
- €20–35
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Mendrisio to Malpensa Aeroporto T1
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- €22–40
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Locarno to Milano Centrale
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €40–70
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Locarno to Milano Centrale
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €40–70
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Bellinzona to Zürich HB
- Ave. Duration
- 1h 38m
- Frequency
- Hourly
- Estimated price
- €55–95
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Locarno to Milano Centrale
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €40–70
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Brig to Genève-Aéroport
- Ave. Duration
- 2h 48m
- Frequency
- Hourly
- Estimated price
- €80–130
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Locarno to Milano Centrale
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €40–70
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Locarno to Milano Centrale
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €40–70
- Website
- Swiss Federal Railways (SBB CFF FFS)
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- Trenord
Train from Locarno to Mendrisio
- Ave. Duration
- 56 min
- Frequency
- Hourly
- Estimated price
- €4–6
- Website
- Trenord
Train from Mendrisio to Malpensa Aeroporto T1
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- €5–7
- Website
- Trenord
Train from Locarno to Monza
- Ave. Duration
- 1h 44m
- Frequency
- Hourly
- Estimated price
- €7–10
- Website
- Trenord
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from Milano Centrale to Lyon Part Dieu
- Ave. Duration
- 4h 43m
- Frequency
- Twice daily
- Estimated price
- €50–75
- Website
- Trenitalia
Train from Milano Centrale to Ventimiglia
- Ave. Duration
- 4h 25m
- Frequency
- Twice a week
- Estimated price
- €30–50
- Website
- Trenitalia
- Phone
- +34 91 232 03 20
- Website
- Renfe Viajeros
Train from Lyon Part Dieu to Barcelona-Sants
- Ave. Duration
- 4h 48m
- Frequency
- Once daily
- Estimated price
- €80–120
- Website
- Renfe Viajeros
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 28m
- Frequency
- Twice daily
- Estimated price
- €75–110
- Website
- Renfe Viajeros
Train from Marseille St Charles to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 8h 14m
- Frequency
- Once daily
- Estimated price
- €140–210
- Website
- Renfe Viajeros
- Phone
- +34 91 232 03 20
- Website
- Renfe AVE
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 2m
- Frequency
- Hourly
- Estimated price
- €85–150
- Website
- Renfe AVE
- Phone
- +34 900 926 851
- [email protected]
- Website
- Iryo
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 23m
- Frequency
- Hourly
- Estimated price
- €55–100
- Website
- Iryo
- Phone
- +34 900 759 781
- Website
- Ouigo
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 32m
- Frequency
- Every 4 hours
- Estimated price
- €45–80
- Website
- Ouigo
- Phone
- +41 58 580 70 70
- Website
- Schweizerische Südostbahn AG
Train from Bellinzona to Zürich HB
- Ave. Duration
- 2h 56m
- Frequency
- 4 times a day
- Estimated price
- €45–75
- Schedules at
- Schweizerische Südostbahn AG
- 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
- +41 (0)91 756 04 00
- [email protected]
- Website
- FART
Train from Locarno FART to Domodossola
- Ave. Duration
- 1h 49m
- Frequency
- Hourly
- Estimated price
- €10–15
- Schedules at
- FART
- Phone
- +39 06 68475475
- Website
- Trenitalia Intercity
Train from Milano Centrale to Ventimiglia
- Ave. Duration
- 3h 54m
- Frequency
- Every 4 hours
- Estimated price
- €30–55
- Website
- Trenitalia Intercity
- Phone
- +33 1 84 94 36 35
- Website
- TGV inOui
Train from Nice Ville to Marseille St Charles
- Ave. Duration
- 2h 37m
- Frequency
- 5 times a day
- Estimated price
- €45–70
- Website
- TGV inOui
- Phone
- +33 4 13 94 30 50
- Website
- Zou! Lignes Express Régionales
Train from Nice Ville to Marseille St Charles
- Ave. Duration
- 2h 39m
- Frequency
- 4 times a day
- Estimated price
- €55–80
- Website
- Zou! Lignes Express Régionales
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Bellinzona to Milan
- Ave. Duration
- 1h 35m
- Frequency
- Twice daily
- Estimated price
- €9–14
- Website
- Flixbus
Bus from Milan to Madrid
- Ave. Duration
- 23h 5m
- Frequency
- Once daily
- Estimated price
- €140–220
- 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
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from Milano, Autostazione Lampugnano to Marseille - Saint-Charles Bus Station
- Ave. Duration
- 7h 40m
- Frequency
- Every 3 hours
- Estimated price
- €35–65
- Website
- BlaBlaCar Bus
Bus from Marseille - Saint-Charles Bus Station to Estación Sur de Autobuses
- Ave. Duration
- 17h 30m
- Frequency
- 3 times a day
- Estimated price
- €90–160
- 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
Italy Travel Guides
Read the travel guide
5 delightfully under-the-radar French towns you need to visit
Read the travel guide
Booking & Getting There
Locarno to Madrid bus services, operated by FlixBus, arrive at Milan station.
Locarno to Madrid train services, operated by Swiss Federal Railways (SBB CFF FFS), arrive at Milano Centrale station.
Yes, the driving distance between Locarno to Madrid is 1522 km. It takes approximately 16h 58m to drive from Locarno to Madrid.
Book your Locarno to Madrid train tickets online with Omio.
There are 7041+ hotels available in Madrid.





























































