There are 10 ways to get from Visp to Madrid by train, plane, train (Trenitalia, TGV, 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 to Geneva International Airport, fly
best- Take the train from Visp to Genève-Aéroporttrain
- Fly from Geneva International Airport (GVA) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane GVA - MAD
7h 15m€119–302Train to Milano Malpensa Airport, fly
cheapest- Take the train from Domodossola to Gallaratetrain
- Fly from Milano Malpensa Airport (MXP) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane MXP - MAD
8h 7m€54–209Train via Barcelona
- Take the train from Visp to Genèvetrain Ec / ...
- Take the train from Bellegarde to Lyon Part Dieutrain Ter
- Take the train from Lyon Part Dieu to Barcelona-Santstrain
- Take the train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandestrain Ave
14h 43m€152–329Train, bus via Geneva
- Take the train from Visp to Genèvetrain Ir95 / ...
- Take the bus from Geneva - Bus station to Estación Sur de Autobusesbus
25h 17m€167–341Drive 1,445.5 km
- Drive from Visp to Madridcar 1,445.5 km
14h 53m€247–357Train to Basel, fly
- Take the train from Visp to Basel SBBtrain
- Fly from Basel (BSL) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane BSL - MAD
7h 19m€80–299Train, train to Zurich Airport, fly
- Take the train from Visp to Berntrain
- Take the train from Bern to Zürich Flughafentrain
- Fly from Zurich Airport (ZRH) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane ZRH - MAD
7h 30m€139–355Train to Milan Linate Airport, fly
- Take the train from Domodossola to Rho Fiera Milanotrain
- Fly from Milan Linate Airport (LIN) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane LIN - MAD
8h 58m€84–233Train
- Take the train from Visp to St-Mauricetrain Ir / ...
- Take the train from St-Maurice to Annemassetrain
- Take the train from Annemasse to Avignon Tgvtrain Tgv
- Take the train from Avignon Tgv to Madrid-Puerta de Atocha-Almudena Grandestrain
16h 17m€216–377Train, bus
- Take the train from Visp to Berntrain Ic8 / ...
- Take the bus from Bern to Lyonbus
- Take the bus from Lyon to Madridbus
26h 3m€134–247
Visp to Madrid by train
Questions & Answers
The cheapest way to get from Visp to Madrid is to train and fly which costs €50 - €210 and takes 8h 7m.
The fastest way to get from Visp to Madrid is to train and fly which takes 7h 15m and costs €110 - €310.
No, there is no direct train from Visp to Madrid. However, there are services departing from Visp and arriving at Madrid-Puerta de Atocha-Almudena Grandes via Genève, Bellegarde, Lyon Part Dieu and Barcelona-Sants. The journey, including transfers, takes approximately 14h 43m.
The distance between Visp and Madrid is 1223 km. The road distance is 1445.5 km.
The best way to get from Visp to Madrid without a car is to train via Barcelona which takes 14h 43m and costs €150 - €330.
It takes approximately 7h 15m to get from Visp to Madrid, including transfers.
Visp to Madrid train services, operated by Swiss Federal Railways (SBB CFF FFS), depart from Visp station.
Visp to Madrid train services, operated by Swiss Federal Railways (SBB CFF FFS), arrive at Genève station.
Yes, the driving distance between Visp to Madrid is 1445 km. It takes approximately 14h 53m to drive from Visp to Madrid.
Book your Visp to Madrid train tickets online with Omio.
What companies run services between Visp, Switzerland and Madrid, Spain?
You can take a train from Visp to Madrid-Puerta de Atocha-Almudena Grandes via Genève, Bellegarde, Lyon Part Dieu, and Barcelona-Sants in around 14h 43m.
- Website
- iberia.com
Flights from Geneva International Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 5m
- When
- Every day
- Estimated price
- €50–130
Flights from Basel to Adolfo Suárez Madrid–Barajas Airport via Barcelona
- Ave. Duration
- 4h 35m
- When
- Monday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €40–210
Flights from Zurich Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €50–140
Flights from Zurich Airport to Adolfo Suárez Madrid–Barajas Airport via Barcelona
- Ave. Duration
- 4h 20m
- When
- Monday to Friday
- Estimated price
- €100–220
Flights from Milano Malpensa Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- €30–150
Flights from Milan Linate Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €55–160
- Website
- vueling.com
Flights from Geneva International Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 5m
- When
- Every day
- Estimated price
- €50–130
Flights from Basel to Adolfo Suárez Madrid–Barajas Airport via Barcelona
- Ave. Duration
- 5h 5m
- When
- Monday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €40–210
Flights from Zurich Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €50–140
Flights from Zurich Airport to Adolfo Suárez Madrid–Barajas Airport via Barcelona
- Ave. Duration
- 4h 20m
- When
- Monday to Friday
- Estimated price
- €100–220
Flights from Milano Malpensa Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- €30–150
Flights from Milan Linate Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €55–160
- Website
- easyjet.com
Flights from Geneva International Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 5m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- €30–170
Flights from Basel to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 26m
- When
- Every day
- Estimated price
- €45–180
- Website
- aireuropa.com
Flights from Geneva International Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 55m
- When
- Friday and Saturday
- Estimated price
- €55–230
Flights from Zurich Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €45–160
Flights from Milano Malpensa Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- €50–200
- Website
- ryanair.com
Flights from Milano Malpensa Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- €30–110
- Website
- swiss.com
Flights from Zurich Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €65–240
- Website
- flyulendo.com
Flights from Milano Malpensa Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 30m
- When
- Monday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €23–120
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Visp to Genève-Aéroport
- Ave. Duration
- 2h 36m
- Frequency
- Hourly
- Estimated price
- €65–120
- Website
- https://www.sbb.ch/en
Train from Visp to Genève
- Ave. Duration
- 2h 26m
- Frequency
- Hourly
- Estimated price
- €70–130
- Website
- https://www.sbb.ch/en
Train from Visp to Basel SBB
- Ave. Duration
- 2h 2m
- Frequency
- Every 3 hours
- Estimated price
- €65–130
- Website
- https://www.sbb.ch/en
Train from Visp to Bern
- Ave. Duration
- 59 min
- Frequency
- Hourly
- Estimated price
- €35–70
- Website
- https://www.sbb.ch/en
Train from Bern to Zürich Flughafen
- Ave. Duration
- 1h 12m
- Frequency
- Hourly
- Estimated price
- €45–85
- Website
- https://www.sbb.ch/en
Train from Visp to St-Maurice
- Ave. Duration
- 51 min
- Frequency
- Hourly
- Estimated price
- €35–65
- Website
- https://www.sbb.ch/en
Train from St-Maurice to Annemasse
- Ave. Duration
- 2h 5m
- Frequency
- Hourly
- Estimated price
- €40–70
- Website
- https://www.sbb.ch/en
- Phone
- +39 06 68475475
- ufficiogruppi@trenitalia.it
- Website
- trenitalia.com
Train from Visp to Genève
- Ave. Duration
- 2h 31m
- Frequency
- 6 times a week
- Estimated price
- €45–95
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- €65–95
- 2nd Class
- €45–65
Train from Visp to Basel SBB
- Ave. Duration
- 2h 1m
- Frequency
- 3 times a day
- Estimated price
- €45–95
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- €65–95
- 2nd Class
- €45–65
Train from Visp to St-Maurice
- Ave. Duration
- 51 min
- Frequency
- 6 times a week
- Estimated price
- €25–70
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- €45–70
- 2nd Class
- €25–35
Rome2Rio's guide to Société Nationale des Chemins de fer Français (SNCF)
Contact Details
- Phone
- +33 1 84 94 36 35
- Website
- track.effiliation.com
Train from Bellegarde to Lyon Part Dieu
- Ave. Duration
- 1h 11m
- Frequency
- 6 times a week
- Estimated price
- €20–45
- Website
- https://track.effiliation.com/servlet/effi.redir?id_compteur=23007591&url=https%3A%2F%2Fwww.sncf-connect.com%2Fen-en%2F
- 2nd Class
- €20–30
- Rail 1st Class
- €30–45
- Phone
- +33 1 84 94 36 35
- Website
- sncf-connect.com
Train from Bellegarde to Lyon Part Dieu
- Ave. Duration
- 1h 11m
- Frequency
- Once daily
- Estimated price
- €27–60
- Website
- https://www.sncf-connect.com/en-en
- 2nd Class
- €27–40
- 1st Class
- €45–60
Train from Annemasse to Avignon Tgv
- Ave. Duration
- 3h 11m
- Frequency
- Once daily
- Estimated price
- €65–120
- Website
- https://www.sncf-connect.com/en-en
- 2nd Class
- €65–90
- 1st Class
- €90–120
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Lyon Part Dieu to Barcelona-Sants
- Ave. Duration
- 4h 48m
- Frequency
- Once daily
- Estimated price
- €50–75
- Website
- https://www.renfe.com/es/en
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 28m
- Frequency
- Twice daily
- Estimated price
- €45–65
- Website
- https://www.renfe.com/es/en
Train from Avignon Tgv to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 7h 41m
- Frequency
- Once daily
- Estimated price
- €85–120
- Website
- https://www.renfe.com/es/en
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 2m
- Frequency
- Hourly
- Estimated price
- €50–75
- Website
- https://www.renfe.com/es/en
- Básico
- €50–75
- Phone
- +34 900 926 851
- atencion.cliente@iryo.eu
- Website
- iryo.eu
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 17m
- Frequency
- Hourly
- Estimated price
- €27–85
- Website
- https://iryo.eu/en/home
- Inicial
- €27–85
- Phone
- +34 910 780 990
- Website
- ouigo.com
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 17m
- Frequency
- 5 times a day
- Estimated price
- €25–80
- Website
- https://www.ouigo.com/es/en
- Phone
- +49 (0) 7531 915109
- info@sbb-deutschland.de
- Website
- sbb-deutschland.de
Train from Visp to Basel SBB
- Ave. Duration
- 2h 6m
- Frequency
- Twice daily
- Estimated price
- €16–20
- Schedules at
- sbb-deutschland.de
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Domodossola to Gallarate
- Ave. Duration
- 1h 1m
- Frequency
- Every 2 hours
- Estimated price
- €6–8
- Website
- https://www.trenord.it/en/
Train from Domodossola to Rho Fiera Milano
- Ave. Duration
- 1h 24m
- Frequency
- Every 2 hours
- Estimated price
- €8–10
- Website
- https://www.trenord.it/en/
- Phone
- +39.06.5210550
- Website
- trenitalia.com
Train from Domodossola to Gallarate
- Ave. Duration
- 1h 39m
- Frequency
- Every 4 hours
- Estimated price
- €6–10
- Website
- https://www.trenitalia.com/en.html
Train from Domodossola to Rho Fiera Milano
- Ave. Duration
- 2h 3m
- Frequency
- Every 4 hours
- Estimated price
- €7–12
- Website
- https://www.trenitalia.com/en.html
- Phone
- +41 27 720 47 47
- info@regionalps.ch
- Website
- regionalps.ch
Train from Visp to St-Maurice
- Ave. Duration
- 1h 10m
- Frequency
- Hourly
- Estimated price
- €30–60
- Schedules at
- regionalps.ch
- 2nd Class Ticket
- €30–34
- 1st Class Ticket
- €50–60
- Phone
- +34 910 207 007
- alsa@alsa.es
- Website
- alsa.com
Bus from Geneva - Bus station to Estación Sur de Autobuses
- Ave. Duration
- 21h 45m
- Frequency
- Twice a week
- Estimated price
- €120–250
- Website
- https://www.alsa.com/en/
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Bern to Lyon
- Ave. Duration
- 5h 20m
- Frequency
- Every 3 hours
- Estimated price
- €19–35
- Website
- https://www.flixbus.co.uk
Bus from Lyon to Madrid
- Ave. Duration
- 17h 35m
- Frequency
- Once daily
- Estimated price
- €75–140
- Website
- https://www.flixbus.co.uk
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
More Questions & Answers
There are 6880+ hotels available in Madrid.























































