There are 11 ways to get from Madrid to Visp by plane, train, train (Renfe, TGV), bus, car, or train (Renfe, Ouigo, 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 Geneva International Airport, train
best- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Geneva International Airport (GVA)plane MAD - GVA
- Take the train from Genève-Aéroport to Visptrain
7h 14mCHF 121–372Fly to Milano Malpensa Airport, train
cheapest- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Milano Malpensa Airport (MXP)plane MAD - MXP
- Take the train from Gallarate to Domodossolatrain
7h 44mCHF 43–197Train
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Avignon Tgvtrain
- Take the train from Avignon Tgv to Genevetrain Tgv
- Take the train from Genève to Visptrain
14h 44mCHF 241–481Bus, train via Lyon
- Take the bus from Madrid to Lyonbus
- Take the bus from Lyon to Martignybus
- Take the train from Martigny to Visptrain R91
23h 54mCHF 123–223Drive 1,444.8 km
- Drive from Madrid to Vispcar 1,444.8 km
14h 52mCHF 230–332Fly to Zurich Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Zurich Airport (ZRH)plane MAD - ZRH
- Take the train from Zürich Flughafen to Berntrain
- Take the train from Bern to Visptrain
7h 36mCHF 136–412Fly to Milan Linate Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Milan Linate Airport (LIN)plane MAD - LIN
- Take the train from Milano Centrale to Brigtrain
8h 9mCHF 105–326Fly to Il Caravaggio International Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Il Caravaggio International Airport (BGY)plane MAD - BGY
- Take the train from Milano Centrale to Brigtrain
8h 44mCHF 99–331Fly to Lyon–Saint Exupéry Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Lyon–Saint Exupéry Airport (LYS)plane MAD - LYS
- Take the train from Lyon Part Dieu to Genevetrain
- Take the train from Genève to Visptrain
10h 25mCHF 144–431Train via Barcelona
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Santstrain Ave
- 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 Visptrain
14h 48mCHF 206–504Bus, train
- Take the bus from Estación Sur de Autobuses to Geneva - Bus stationbus
- Take the train from Genève to Visptrain Ir90 / ...
24h 16mCHF 175–411
Madrid to Visp by train
Questions & Answers
The cheapest way to get from Madrid to Visp is to fly and train which costs SFr 40 - SFr 200 and takes 7h 44m.
The fastest way to get from Madrid to Visp is to fly and train which takes 7h 14m and costs SFr 120 - SFr 380.
No, there is no direct train from Madrid to Visp. However, there are services departing from Madrid-Puerta de Atocha-Almudena Grandes and arriving at Visp via Avignon Tgv and Genève. The journey, including transfers, takes approximately 14h 44m.
The distance between Madrid and Visp is 1223 km. The road distance is 1444.8 km.
The best way to get from Madrid to Visp without a car is to train which takes 14h 44m and costs SFr 240 - SFr 490.
It takes approximately 7h 14m to get from Madrid to Visp, including transfers.
Madrid to Visp train services, operated by Renfe Viajeros, depart from Madrid-Puerta de Atocha-Almudena Grandes station.
Madrid to Visp train services, operated by Renfe Viajeros, arrive at Avignon Tgv station.
Yes, the driving distance between Madrid to Visp is 1445 km. It takes approximately 14h 52m to drive from Madrid to Visp.
Book your Madrid to Visp train tickets online with Omio.
What companies run services between Madrid, Spain and Visp, Switzerland?
You can take a train from Madrid-Puerta de Atocha-Almudena Grandes to Visp via Avignon Tgv and Genève in around 14h 44m.
- Website
- iberia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Geneva International Airport
- Ave. Duration
- 1h 56m
- When
- Every day
- Estimated price
- CHF 55–120
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 10m
- When
- Wednesday, Thursday, and Sunday
- Estimated price
- CHF 35–190
Flights from Adolfo Suárez Madrid–Barajas Airport to Zurich Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- CHF 55–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Milan Linate Airport
- Ave. Duration
- 2h 11m
- When
- Every day
- Estimated price
- CHF 55–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Lyon–Saint Exupéry Airport
- Ave. Duration
- 1h 50m
- When
- Every day
- Estimated price
- CHF 40–140
Flights from Adolfo Suárez Madrid–Barajas Airport to Lyon–Saint Exupéry Airport via Barcelona
- Ave. Duration
- 3h 52m
- When
- Monday and Wednesday
- Estimated price
- CHF 70–240
- Website
- vueling.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Geneva International Airport
- Ave. Duration
- 1h 56m
- When
- Every day
- Estimated price
- CHF 55–120
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 10m
- When
- Wednesday, Thursday, and Sunday
- Estimated price
- CHF 35–190
Flights from Adolfo Suárez Madrid–Barajas Airport to Zurich Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- CHF 55–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Milan Linate Airport
- Ave. Duration
- 2h 10m
- When
- Every day
- Estimated price
- CHF 55–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Lyon–Saint Exupéry Airport
- Ave. Duration
- 1h 50m
- When
- Every day
- Estimated price
- CHF 40–140
Flights from Adolfo Suárez Madrid–Barajas Airport to Lyon–Saint Exupéry Airport via Barcelona
- Ave. Duration
- 3h 52m
- When
- Monday and Wednesday
- Estimated price
- CHF 70–240
- Website
- ryanair.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 9m
- When
- Monday, Tuesday, Wednesday, Thursday, Saturday, and Sunday
- Estimated price
- CHF 40–160
Flights from Adolfo Suárez Madrid–Barajas Airport to Il Caravaggio International Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- CHF 45–170
Flights from Adolfo Suárez Madrid–Barajas Airport to Il Caravaggio International Airport via Ibiza
- Ave. Duration
- 4h 26m
- When
- Monday, Tuesday, Wednesday, Friday, Saturday, and Sunday
- Estimated price
- CHF 45–170
Flights from Adolfo Suárez Madrid–Barajas Airport to Il Caravaggio International Airport via Menorca
- Ave. Duration
- 5h
- When
- Monday
- Estimated price
- CHF 45–170
- Website
- aireuropa.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Geneva International Airport
- Ave. Duration
- 1h 55m
- When
- Friday
- Estimated price
- CHF 55–300
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 5m
- When
- Every day
- Estimated price
- CHF 55–190
Flights from Adolfo Suárez Madrid–Barajas Airport to Zurich Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- CHF 55–180
- Website
- easyjet.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Geneva International Airport
- Ave. Duration
- 2h
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- CHF 40–170
Flights from Adolfo Suárez Madrid–Barajas Airport to Geneva International Airport via Nice
- Ave. Duration
- 4h 45m
- When
- Monday and Friday
- Estimated price
- CHF 40–170
Flights from Adolfo Suárez Madrid–Barajas Airport to Lyon–Saint Exupéry Airport
- Ave. Duration
- 1h 50m
- When
- Friday and Sunday
- Estimated price
- CHF 55–180
- Website
- swiss.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Zurich Airport
- Ave. Duration
- 2h 18m
- When
- Every day
- Estimated price
- CHF 65–190
- Website
- flyulendo.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- CHF 21–110
- Website
- ita-airways.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Milan Linate Airport via Palma Mallorca
- Ave. Duration
- 5h
- When
- Saturday
- Estimated price
- CHF 70–170
- Website
- volotea.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Lyon–Saint Exupéry Airport
- Ave. Duration
- 1h 45m
- When
- Monday, Wednesday, and Friday
- Estimated price
- CHF 30–160
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Genève-Aéroport to Visp
- Ave. Duration
- 2h 28m
- Frequency
- Hourly
- Estimated price
- CHF 65–190
- Website
- https://www.sbb.ch/en
Train from Genève to Visp
- Ave. Duration
- 2h 18m
- Frequency
- Hourly
- Estimated price
- CHF 60–180
- Website
- https://www.sbb.ch/en
Train from Martigny to Visp
- Ave. Duration
- 45 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 22–65
- Website
- https://www.sbb.ch/en
Train from Zürich Flughafen to Bern
- Ave. Duration
- 1h 19m
- Frequency
- Hourly
- Estimated price
- CHF 40–120
- Website
- https://www.sbb.ch/en
Train from Bern to Visp
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- CHF 30–90
- Website
- https://www.sbb.ch/en
Rome2Rio's guide to Renfe Viajeros
Contact Details
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Avignon Tgv
- Ave. Duration
- 8h 2m
- Frequency
- Once daily
- Estimated price
- CHF 110–190
- Website
- https://www.renfe.com/es/en
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 29m
- Frequency
- Twice daily
- Estimated price
- CHF 60–110
- Website
- https://www.renfe.com/es/en
Train from Barcelona-Sants to Lyon Part Dieu
- Ave. Duration
- 5h 7m
- Frequency
- Once daily
- Estimated price
- CHF 65–120
- Website
- https://www.renfe.com/es/en
- Phone
- +33 1 84 94 36 35
- Website
- sncf-connect.com
Train from Avignon Tgv to Geneve
- Ave. Duration
- 3h 3m
- Frequency
- 5 times a week
- Estimated price
- CHF 70–120
- Website
- https://www.sncf-connect.com/en-en
Train from Lyon Part Dieu to Geneve
- Ave. Duration
- 1h 50m
- Frequency
- 5 times a week
- Estimated price
- CHF 30–50
- Website
- https://www.sncf-connect.com/en-en
- Phone
- +41 27 720 47 47
- info@regionalps.ch
- Website
- regionalps.ch
Train from Martigny to Visp
- Ave. Duration
- 58 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 23–46
- Schedules at
- regionalps.ch
- 2nd Class Ticket
- CHF 23–27
- 1st Class Ticket
- CHF 41–46
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Gallarate to Domodossola
- Ave. Duration
- 1h 1m
- Frequency
- Every 2 hours
- Estimated price
- CHF 5–8
- Website
- https://www.trenord.it/en/
- Phone
- +39.06.5210550
- Website
- trenitalia.com
Train from Gallarate to Domodossola
- Ave. Duration
- 1h 41m
- Frequency
- Every 4 hours
- Estimated price
- CHF 9–16
- Website
- https://www.trenitalia.com/en.html
- Phone
- +39 06 68475475
- ufficiogruppi@trenitalia.it
- Website
- trenitalia.com
Train from Milano Centrale to Brig
- Ave. Duration
- 2h 4m
- Frequency
- Every 4 hours
- Estimated price
- CHF 35–80
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- CHF 55–80
- 2nd Class
- CHF 35–50
- Phone
- +33 1 84 94 36 35
- Website
- track.effiliation.com
Train from Lyon Part Dieu to Geneve
- Ave. Duration
- 2h
- Frequency
- Every 3 hours
- Estimated price
- CHF 24–55
- Website
- https://track.effiliation.com/servlet/effi.redir?id_compteur=23007591&url=https%3A%2F%2Fwww.sncf-connect.com%2Fen-en%2F
Rome2Rio's guide to Renfe AVE
Contact Details
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 2m
- Frequency
- Hourly
- Estimated price
- CHF 90–150
- Website
- https://www.renfe.com/es/en
- Phone
- +34 900 926 851
- atencion.cliente@iryo.eu
- Website
- iryo.eu
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 21m
- Frequency
- Hourly
- Estimated price
- CHF 65–130
- Website
- https://iryo.eu/en/home
- Phone
- +34 910 780 990
- Website
- ouigo.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 23m
- Frequency
- 5 times a day
- Estimated price
- CHF 55–85
- Website
- https://www.ouigo.com/es/en
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Madrid to Lyon
- Ave. Duration
- 16h 40m
- Frequency
- 3 times a day
- Estimated price
- CHF 80–140
- Website
- https://www.flixbus.co.uk
Bus from Lyon to Martigny
- Ave. Duration
- 5h 20m
- Frequency
- 6 times a week
- Estimated price
- CHF 18–35
- Website
- https://www.flixbus.co.uk
- Phone
- +34 910 207 007
- Website
- alsa.es
Bus from Estación Sur de Autobuses to Geneva - Bus station
- Ave. Duration
- 21h 30m
- Frequency
- Twice a week
- Estimated price
- CHF 110–240
- Website
- https://www.alsa.com/en/
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
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 Spain: A guide to Renfe
Read the travel guide
More Questions & Answers
There are 1828+ hotels available in Visp.

















































