There are 10 ways to get from Madrid to Villach by plane, shuttle, train (Renfe, Ouigo, TGV, Trenitalia), bus, car, train, or night train
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 Ljubljana, shuttle
best- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Ljubljana (LJU)plane MAD - LJU
- Take a shuttle bus from Zgornji Brnik, Letališče Jožeta Pučnika Ljubljana to Klagenfurt - Hauptbahnhof
7h 7m€175–522Fly to Trieste – Friuli Venezia Giulia Airport, train
cheapest- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Trieste – Friuli Venezia Giulia Airport (TRS)plane MAD - TRS
- Take the train from Udine to Villach Hbftrain
10h 31m€102–236Train
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Santstrain Ave
- Take the train from Barcelona-Sants to Valence Tgv Rhone-Alpes Sudtrain Tgv
- Take the train from Valence Tgv Rhone-Alpes Sud to Chambery Challes Les Eauxtrain Ter
- Take the train from Chambery Challes Les Eaux to Torino Porta Susatrain Tgv
- Take the train from Torino Porta Susa to Venezia Mestretrain Fr
- Take the train from Venezia Mestre to Villach Hbftrain Rjx
23h 6m€268–679Bus
- Take the bus from Madrid to Milanbus FlixBus N1138
- Take the bus from Milano, Autostazione Lampugnano to Villach Hbfbus N456
31h 10m€176–293Drive 1,966 km
- Drive from Madrid to Villachcar 1,966 km
20h 32m€320–463Fly to Klagenfurt Airport
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Klagenfurt Airport (KLU)plane MAD - KLU
8h 10m€115–362Fly to Venice Marco Polo Airport, shuttle, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Venice Marco Polo Airport (VCE)plane MAD - VCE
- Take a shuttle bus from Venezia, Aeroporto Marco Polo di Venezia to Udine
- Take the train from Udine to Villach Hbftrain
9h 25m€212–587Fly to Zagreb Franjo Tuđman Airport, shuttle, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Zagreb Franjo Tuđman Airport (ZAG)plane MAD - ZAG
- Take a shuttle bus from Zagreb Airport to Ljubljana
- Take the train from Ljubljana to Villach Hbftrain
9h 46m€108–701Fly to Munich International Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Munich International Airport (MUC)plane MAD - MUC
- Take the train from Muenchen Ost to Salzburg Hbftrain
- Take the train from Salzburg Hbf to Villach Hbftrain
10h 17m€133–493Bus, night train
- Take the bus from Méndez Álvaro Estación Sur to Padovabus
- Take the night train from Venezia Mestre to Villach Hbfnighttrain Nj
32h 2m€151–301
Madrid to Villach by train
Questions & Answers
The cheapest way to get from Madrid to Villach is to fly and train which costs €100 - €240 and takes 10h 31m.
The fastest way to get from Madrid to Villach is to fly and shuttle which takes 7h 7m and costs €170 - €550.
No, there is no direct bus from Madrid to Villach. However, there are services departing from Madrid and arriving at Villach Hbf via Milano, Autostazione Lampugnano. The journey, including transfers, takes approximately 31h 10m.
No, there is no direct train from Madrid to Villach. However, there are services departing from Madrid-Puerta de Atocha-Almudena Grandes and arriving at Villach Hbf via Barcelona-Sants, Valence Tgv Rhone-Alpes Sud, Chambery Challes Les Eaux, Torino Porta Susa and Venezia Mestre. The journey, including transfers, takes approximately 23h 6m.
The distance between Madrid and Villach is 1700 km. The road distance is 1966 km.
The best way to get from Madrid to Villach without a car is to train which takes 23h 6m and costs €260 - €700.
It takes approximately 7h 7m to get from Madrid to Villach, including transfers.
Madrid to Villach bus services, operated by FlixBus, depart from Madrid station.
Madrid to Villach train services, operated by Renfe AVE, depart from Madrid-Puerta de Atocha-Almudena Grandes station.
The best way to get from Madrid to Villach is to train which takes 23h 6m and costs €260 - €700. Alternatively, you can bus, which costs €170 - €300 and takes 31h 10m, you could also fly, which costs €110 - €370 and takes 8h 10m.
What companies run services between Madrid, Spain and Villach, Austria?
You can take a train from Madrid-Puerta de Atocha-Almudena Grandes to Villach Hbf via Barcelona-Sants, Valence Tgv Rhone-Alpes Sud, Chambery Challes Les Eaux, Torino Porta Susa, and Venezia Mestre in around 23h 6m. Alternatively, you can take a bus from Madrid to Villach Hbf via Milano, Autostazione Lampugnano in around 31h 10m.
- Website
- lufthansa.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Ljubljana via Munich International Airport
- Ave. Duration
- 4h 30m
- When
- Monday, Tuesday, Friday, and Sunday
- Estimated price
- €90–420
Flights from Adolfo Suárez Madrid–Barajas Airport to Ljubljana via Frankfurt
- Ave. Duration
- 4h 45m
- When
- Every day
- Estimated price
- €110–190
Flights from Adolfo Suárez Madrid–Barajas Airport to Klagenfurt Airport via Vienna
- Ave. Duration
- 4h 40m
- When
- Every day
- Estimated price
- €110–220
Flights from Adolfo Suárez Madrid–Barajas Airport to Zagreb Franjo Tuđman Airport via Munich International Airport
- Ave. Duration
- 5h 18m
- When
- Every day
- Estimated price
- €80–360
Flights from Adolfo Suárez Madrid–Barajas Airport to Trieste – Friuli Venezia Giulia Airport via Rome
- Ave. Duration
- 5h 27m
- When
- Every day
- Estimated price
- €75–290
Flights from Adolfo Suárez Madrid–Barajas Airport to Munich International Airport
- Ave. Duration
- 2h 32m
- When
- Every day
- Estimated price
- €70–340
- Website
- iberia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Ljubljana
- Ave. Duration
- 2h 45m
- When
- Tuesday and Saturday
- Estimated price
- €75–160
Flights from Adolfo Suárez Madrid–Barajas Airport to Venice Marco Polo Airport
- Ave. Duration
- 2h 28m
- When
- Every day
- Estimated price
- €50–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Zagreb Franjo Tuđman Airport
- Ave. Duration
- 2h 45m
- When
- Every day
- Estimated price
- €60–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Munich International Airport
- Ave. Duration
- 2h 35m
- When
- Every day
- Estimated price
- €95–180
- Website
- ryanair.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Klagenfurt Airport via Palma Mallorca
- Ave. Duration
- 4h 27m
- When
- Monday, Tuesday, Wednesday, Friday, and Sunday
- Estimated price
- €110–220
Flights from Adolfo Suárez Madrid–Barajas Airport to Venice Marco Polo Airport
- Ave. Duration
- 2h 22m
- When
- Every day
- Estimated price
- €40–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Zagreb Franjo Tuđman Airport via Palma Mallorca
- Ave. Duration
- 5h 30m
- When
- Wednesday to Saturday
- Estimated price
- €55–160
Flights from Adolfo Suárez Madrid–Barajas Airport to Zagreb Franjo Tuđman Airport via Milan Bergamo
- Ave. Duration
- 5h 30m
- When
- Wednesday, Friday, and Saturday
- Estimated price
- €55–160
- Website
- aireuropa.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Venice Marco Polo Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €60–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Trieste – Friuli Venezia Giulia Airport via Rome
- Ave. Duration
- 5h 17m
- When
- Every day
- Estimated price
- €75–290
Flights from Adolfo Suárez Madrid–Barajas Airport to Munich International Airport
- Ave. Duration
- 2h 35m
- When
- Every day
- Estimated price
- €90–200
- Website
- ita-airways.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Trieste – Friuli Venezia Giulia Airport via Rome
- Ave. Duration
- 5h 26m
- When
- Every day
- Estimated price
- €75–290
- Website
- airfrance.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Ljubljana via Paris Charles de Gaulle
- Ave. Duration
- 5h 37m
- When
- Every day
- Estimated price
- €95–450
Flights from Adolfo Suárez Madrid–Barajas Airport to Trieste – Friuli Venezia Giulia Airport via Rome
- Ave. Duration
- 5h 27m
- When
- Every day
- Estimated price
- €75–290
- Website
- austrian.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Klagenfurt Airport via Vienna
- Ave. Duration
- 4h 40m
- When
- Every day
- Estimated price
- €110–220
Flights from Adolfo Suárez Madrid–Barajas Airport to Trieste – Friuli Venezia Giulia Airport via Rome
- Ave. Duration
- 5h 45m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €75–290
Flights from Adolfo Suárez Madrid–Barajas Airport to Munich International Airport
- Ave. Duration
- 2h 30m
- When
- Every day
- Estimated price
- €90–280
- Website
- lufthansa-city.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Munich International Airport
- Ave. Duration
- 2h 32m
- When
- Every day
- Estimated price
- €70–340
- Website
- transavia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Ljubljana via Paris Orly
- Ave. Duration
- 6h 30m
- When
- Tuesday and Saturday
- Estimated price
- €95–440
- Website
- skyalps.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Klagenfurt Airport via Rome
- Ave. Duration
- 5h 30m
- When
- Thursday and Sunday
- Estimated price
- €140–420
- Website
- flyulendo.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Venice Marco Polo Airport
- Ave. Duration
- 2h 35m
- When
- Tuesday, Thursday, Saturday, and Sunday
- Estimated price
- €29–110
- Website
- croatiaairlines.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Zagreb Franjo Tuđman Airport
- Ave. Duration
- 2h 40m
- When
- Monday, Thursday, and Saturday
- Estimated price
- €110–600
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 22m
- Frequency
- Every 30 minutes
- Estimated price
- €95–170
- Website
- https://www.renfe.com/es/en
- Phone
- +34 900 926 851
- [email protected]
- Website
- iryo.eu
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 31m
- Frequency
- Hourly
- Estimated price
- €60–130
- Website
- https://iryo.eu/en/home
- Phone
- +34 900 759 781
- Website
- ouigo.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 23m
- Frequency
- Every 2 hours
- Estimated price
- €55–100
- Website
- https://www.ouigo.com/es/en
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 29m
- Frequency
- 4 times a day
- Estimated price
- €75–120
- Website
- https://www.renfe.com/es/en
Train from Barcelona-Sants to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 4h 29m
- Frequency
- Twice daily
- Estimated price
- €70–110
- Website
- https://www.renfe.com/es/en
- Phone
- +33 1 84 94 36 35
- Website
- sncf-connect.com
Train from Barcelona-Sants to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 4h 26m
- Frequency
- 5 times a day
- Estimated price
- €110–190
- Website
- https://www.sncf-connect.com/en-en
Train from Chambery Challes Les Eaux to Torino Porta Susa
- Ave. Duration
- 2h 39m
- Frequency
- Every 4 hours
- Estimated price
- €40–70
- Website
- https://www.sncf-connect.com/en-en
- Phone
- +33 1 84 94 36 35
- Website
- track.effiliation.com
Train from Valence Tgv Rhone-Alpes Sud to Chambery Challes Les Eaux
- Ave. Duration
- 1h 56m
- Frequency
- Hourly
- Estimated price
- €26–55
- Website
- https://track.effiliation.com/servlet/effi.redir?id_compteur=23007591&url=https%3A%2F%2Fwww.sncf-connect.com%2Fen-en%2F
- Phone
- +33 4 13 94 30 50
- Website
- zou.maregionsud.fr
Train from Valence Tgv Rhone-Alpes Sud to Chambery Challes Les Eaux
- Ave. Duration
- 1h 54m
- Frequency
- Every 2 hours
- Estimated price
- €40–80
- Website
- https://zou.maregionsud.fr/en/
- Phone
- +39.06.5210550
- Website
- trenitalia.com
Train from Chambery Challes Les Eaux to Torino Porta Susa
- Ave. Duration
- 2h 34m
- Frequency
- 4 times a day
- Estimated price
- €24–40
- Website
- https://www.trenitalia.com/en.html
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Torino Porta Susa to Venezia Mestre
- Ave. Duration
- 3h 15m
- Frequency
- Every 4 hours
- Estimated price
- €55–120
- Schedules at
- trenitalia.com
- Phone
- +43 (0)5 1717
- Website
- oebb.at
Train from Venezia Mestre to Villach Hbf
- Ave. Duration
- 3h 11m
- Frequency
- 4 times a day
- Estimated price
- €35–55
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/railjet
- Website
- https://shop.oebbtickets.at/en/ticket
- *
- €35–55
Train from Udine to Villach Hbf
- Ave. Duration
- 1h 35m
- Frequency
- Every 4 hours
- Estimated price
- €21–35
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/railjet
- Website
- https://shop.oebbtickets.at/en/ticket
- *
- €21–35
Train from Udine to Villach Hbf
- Ave. Duration
- 1h 35m
- Frequency
- Every 4 hours
- Estimated price
- €21–35
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/railjet
- Website
- https://shop.oebbtickets.at/en/ticket
- *
- €21–35
Train from Salzburg Hbf to Villach Hbf
- Ave. Duration
- 2h 26m
- Frequency
- 5 times a day
- Estimated price
- €29–45
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/railjet
- Website
- https://shop.oebbtickets.at/en/ticket
- *
- €29–45
- Phone
- _AUSTRIAN_RAILWAYS_(ÖBB)
- Website
- oebb.at
Train from Udine to Villach Hbf
- Ave. Duration
- 1h 44m
- Frequency
- Twice daily
- Estimated price
- €24–45
- Website
- https://www.oebb.at/en/
Train from Udine to Villach Hbf
- Ave. Duration
- 1h 44m
- Frequency
- Twice daily
- Estimated price
- €24–45
- Website
- https://www.oebb.at/en/
Train from Salzburg Hbf to Villach Hbf
- Ave. Duration
- 2h 25m
- Frequency
- 3 times a day
- Estimated price
- €35–70
- Website
- https://www.oebb.at/en/
- Phone
- +386 1 29 13 331
- [email protected]
- Website
- potniski.sz.si
Train from Ljubljana to Villach Hbf
- Ave. Duration
- 1h 40m
- Frequency
- Every 2 hours
- Estimated price
- €19–29
- Website
- https://potniski.sz.si/en/
- Phone
- +385 60 333 444
- [email protected]
- Website
- hzpp.hr
Train from Ljubljana to Villach Hbf
- Ave. Duration
- 1h 40m
- Frequency
- 4 times a day
- Estimated price
- €19–29
- Website
- http://www.hzpp.hr/en
- Phone
- +49 30 200 73-0
- [email protected]
- Website
- transdev.de
Train from Muenchen Ost to Salzburg Hbf
- Ave. Duration
- 1h 54m
- Frequency
- Every 30 minutes
- Estimated price
- €26–40
- Schedules at
- transdev.de
- Phone
- +43 1 89900
- [email protected]
- Website
- westbahn.at
Train from Muenchen Ost to Salzburg Hbf
- Ave. Duration
- 1h 38m
- Frequency
- Every 3 hours
- Estimated price
- €27–50
- Website
- https://westbahn.at/en/
- Phone
- +32 70 79 79 79
- Website
- belgiantrain.be
Train from Muenchen Ost to Salzburg Hbf
- Ave. Duration
- 1h 40m
- Frequency
- Once daily
- Estimated price
- €24–50
- Website
- https://www.belgiantrain.be/en
- Phone
- +31 30 751 5155
- Website
- ns.nl
Train from Muenchen Ost to Salzburg Hbf
- Ave. Duration
- 1h 42m
- Frequency
- Once daily
- Estimated price
- €16–35
- Website
- https://www.ns.nl/en
- Phone
- +43 (0) 51717
- Website
- nightjet.com
Train from Muenchen Ost to Salzburg Hbf
- Ave. Duration
- 1h 47m
- Frequency
- 3 times a week
- Estimated price
- €18–90
- Website
- https://www.nightjet.com/en/#/home
- Sleeper Carriage
- €80–90
- Couchette Carriage
- €50–60
- Seating Carriage
- €18–23
Train from Salzburg Hbf to Villach Hbf
- Ave. Duration
- 2h 25m
- Frequency
- Twice daily
- Estimated price
- €20–90
- Website
- https://www.nightjet.com/en/#/home
- Sleeper Carriage
- €80–90
- Couchette Carriage
- €50–60
- Seating Carriage
- €20–24
Night train from Venezia Mestre to Villach Hbf
- Ave. Duration
- 3h 10m
- Frequency
- 4 times a day
- Estimated price
- €22–95
- Website
- https://www.nightjet.com/en/#/home
- Sleeper Carriage
- €85–95
- Couchette Carriage
- €55–65
- Seating Carriage
- €22–27
- Phone
- +49 8024 997171
- [email protected]
- Website
- brb.de
Train from Muenchen Ost to Salzburg Hbf
- Ave. Duration
- 1h 45m
- Frequency
- Once a week
- Estimated price
- €55–170
- Schedules at
- brb.de
- Phone
- +43 (0) 5 1717
- Website
- oebb.at
Train from Salzburg Hbf to Villach Hbf
- Ave. Duration
- 2h 21m
- Frequency
- Hourly
- Estimated price
- €22–45
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/eurocity-intercity
- Website
- https://shop.oebbtickets.at/en/ticket?cref=oebb-header
- Phone
- +386 1 320 4530
- [email protected]
- Website
- goopti.com
Shuttle from Zgornji Brnik, Letališče Jožeta Pučnika Ljubljana to Klagenfurt - Hauptbahnhof
- Ave. Duration
- 1h 8m
- Frequency
- On demand
- Estimated price
- €80–200
- Website
- https://www.goopti.com/en/
- Private
- €146
Shuttle from Venezia, Aeroporto Marco Polo di Venezia to Udine
- Ave. Duration
- 1h 45m
- Frequency
- On demand
- Estimated price
- €160–410
- Website
- https://www.goopti.com/en/
Shuttle from Zagreb Airport to Ljubljana
- Ave. Duration
- 1h 56m
- Frequency
- On demand
- Estimated price
- €28–480
- Website
- https://www.goopti.com/en/
- Shared
- €28–75
- Private
- €140–180
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- https://www.flixbus.fr
Bus from Madrid to Milan
- Ave. Duration
- 23h 5m
- Frequency
- Once daily
- Estimated price
- €130–230
- Website
- https://www.flixbus.co.uk
Bus from Milano, Autostazione Lampugnano to Villach Hbf
- Ave. Duration
- 7h 5m
- Frequency
- Once daily
- Estimated price
- €40–70
- Website
- https://www.flixbus.co.uk
- Phone
- +4-0263-21.55.00
- Website
- tabitatour.ro
Bus from Méndez Álvaro Estación Sur to Padova
- Ave. Duration
- 27h 34m
- Frequency
- Once a week
- Estimated price
- €120–160
- Schedules at
- tabitatour.ro
Want to know more about travelling around Austria
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
Italy Travel Guides
Read the travel guide
More Questions & Answers
Madrid to Villach bus services, operated by FlixBus, arrive at Milan station.
Madrid to Villach train services, operated by Renfe AVE, arrive at Barcelona-Sants station.
Yes, the driving distance between Madrid to Villach is 1966 km. It takes approximately 20h 32m to drive from Madrid to Villach.
Book your Madrid to Villach train tickets online with Omio.
Book your Madrid to Villach bus tickets online with Omio and FlixBus.
There are 2727+ hotels available in Villach.

























































































