There are 11 ways to get from Villach to Madrid by plane, train (Trenitalia, Renfe, Ouigo), bus, car, train, shuttle, 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 from Klagenfurt Airport
best- Fly from Klagenfurt Airport (KLU) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane KLU - MAD
8h 17m€136–301Train to Venice Marco Polo Airport, fly
cheapest- Take the train from Villach Hbf to Venezia Mestretrain
- Fly from Venice Marco Polo Airport (VCE) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane VCE - MAD
8h 46m€75–200Train
- Take the train from Villach Hbf to Venezia Mestretrain Rjx
- Take the train from Venezia Mestre 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
20h 48m€258–510Bus
- Take the bus from Villach Hbf to Milano, Autostazione Lampugnanobus N456
- Take the bus from Milan to Madridbus FlixBus N1138
31h 25m€171–275Drive 1,948.6 km
- Drive from Villach to Madridcar 1,948.6 km
20h 48m€315–455Train to Ljubljana, fly
- Take the train from Villach Hbf to Kranjtrain
- Fly from Ljubljana (LJU) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane LJU - MAD
9h 8m€121–268Train, shuttle to Zagreb Franjo Tuđman Airport, fly
- Take the train from Villach Hbf to Ljubljanatrain
- Take a shuttle bus from Ljubljana, Avtobusna Postaja to Zagreb Airport
- Fly from Zagreb Franjo Tuđman Airport (ZAG) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane ZAG - MAD
8h 36m€110–721Train to Trieste – Friuli Venezia Giulia Airport, fly
- Take the train from Villach Hbf to Udinetrain
- Fly from Trieste – Friuli Venezia Giulia Airport (TRS) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane TRS - MAD
9h 53m€98–245Train to Munich International Airport, fly
- Take the train from Villach Hbf to Muenchen Hbftrain
- Fly from Munich International Airport (MUC) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane MUC - MAD
10h 11m€148–489Night train, bus
- Take the nighttrain from Villach Hbf to Venezia Mestrenighttrain Nj
- Take the bus from Padova to Méndez Álvaro Estación Surbus
32h 15m€146–307Bus, train
- Take the bus from Hauptbahnhof to Udine stazionebus
- Take the train from Udine to Venezia S. Luciatrain Re
- Take the train from Venezia S. Lucia to Genova P.Za Principetrain Fr
- Take the bus from Genoa - Via Fanti d'Italia Bus Stop to Nice - Airport Bus Station Terminal 1bus
- Take the bus from Nice - Airport Bus Station Terminal 1 to Estación Sur de Autobusesbus
36h 14m€246–472
Villach to Madrid by train
Questions & Answers
The cheapest way to get from Villach to Madrid is to train and fly which costs €70 - €200 and takes 8h 46m.
The fastest way to get from Villach to Madrid is to fly which takes 8h 17m and costs €130 - €310.
No, there is no direct bus from Villach to Madrid. However, there are services departing from Villach Hbf and arriving at Madrid via Milan. The journey, including transfers, takes approximately 31h 25m.
No, there is no direct train from Villach to Madrid. However, there are services departing from Villach Hbf and arriving at Madrid-Puerta de Atocha-Almudena Grandes via Venezia Mestre, Milano Centrale, Lyon Part Dieu and Barcelona-Sants. The journey, including transfers, takes approximately 20h 48m.
The distance between Villach and Madrid is 1650 km. The road distance is 1948.6 km.
The best way to get from Villach to Madrid without a car is to train which takes 20h 48m and costs €250 - €550.
It takes approximately 8h 17m to get from Villach to Madrid, including transfers.
Villach to Madrid bus services, operated by FlixBus, depart from Villach Hbf station.
Villach to Madrid train services, operated by Railjet, depart from Villach Hbf station.
The best way to get from Villach to Madrid is to fly which takes 8h 17m and costs €130 - €310. Alternatively, you can train, which costs €250 - €550 and takes 20h 48m, you could also bus, which costs €170 - €280 and takes 31h 25m.
What companies run services between Villach, Austria and Madrid, Spain?
Ryanair, SkyAlps, and Iberia fly from Klagenfurt Airport (KLU) to Adolfo Suárez Madrid–Barajas Airport (MAD) 4 times a week. Alternatively, you can take a train from Villach Hbf to Madrid-Puerta de Atocha-Almudena Grandes via Venezia Mestre, Milano Centrale, Lyon Part Dieu, and Barcelona-Sants in around 20h 48m.
- Website
- iberia.com
Flights from Klagenfurt Airport to Adolfo Suárez Madrid–Barajas Airport via Rome
- Ave. Duration
- 5h 5m
- When
- Thursday and Sunday
- Estimated price
- €100–370
Flights from Venice Marco Polo Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 40m
- When
- Every day
- Estimated price
- €50–150
Flights from Ljubljana to Adolfo Suárez Madrid–Barajas Airport via Barcelona
- Ave. Duration
- 6h 30m
- When
- Thursday and Sunday
- Estimated price
- €100–230
Flights from Zagreb Franjo Tuđman Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 55m
- When
- Every day
- Estimated price
- €65–150
Flights from Trieste – Friuli Venezia Giulia Airport to Adolfo Suárez Madrid–Barajas Airport via Valencia
- Ave. Duration
- 4h 45m
- When
- Monday, Tuesday, Friday, and Sunday
- Estimated price
- €70–190
Flights from Trieste – Friuli Venezia Giulia Airport to Adolfo Suárez Madrid–Barajas Airport via Olbia
- Ave. Duration
- 6h 15m
- When
- Sunday
- Estimated price
- €65–250
Flights from Munich International Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 50m
- When
- Every day
- Estimated price
- €80–180
- Website
- vueling.com
Flights from Klagenfurt Airport to Adolfo Suárez Madrid–Barajas Airport via Rome
- Ave. Duration
- 5h 5m
- When
- Thursday and Sunday
- Estimated price
- €100–370
Flights from Venice Marco Polo Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 40m
- When
- Every day
- Estimated price
- €50–150
Flights from Ljubljana to Adolfo Suárez Madrid–Barajas Airport via Barcelona
- Ave. Duration
- 6h 30m
- When
- Thursday and Sunday
- Estimated price
- €100–230
Flights from Zagreb Franjo Tuđman Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 55m
- When
- Every day
- Estimated price
- €65–150
Flights from Trieste – Friuli Venezia Giulia Airport to Adolfo Suárez Madrid–Barajas Airport via Valencia
- Ave. Duration
- 4h 45m
- When
- Monday, Tuesday, Friday, and Sunday
- Estimated price
- €70–190
Flights from Trieste – Friuli Venezia Giulia Airport to Adolfo Suárez Madrid–Barajas Airport via Olbia
- Ave. Duration
- 6h 15m
- When
- Sunday
- Estimated price
- €65–250
Flights from Munich International Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 50m
- When
- Every day
- Estimated price
- €80–180
- Website
- lufthansa.com
Flights from Ljubljana to Adolfo Suárez Madrid–Barajas Airport via Munich International Airport
- Ave. Duration
- 4h 35m
- When
- Monday, Tuesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €85–420
Flights from Ljubljana to Adolfo Suárez Madrid–Barajas Airport via Frankfurt
- Ave. Duration
- 6h 5m
- When
- Every day
- Estimated price
- €110–430
Flights from Zagreb Franjo Tuđman Airport to Adolfo Suárez Madrid–Barajas Airport via Munich International Airport
- Ave. Duration
- 5h 11m
- When
- Every day
- Estimated price
- €75–350
Flights from Munich International Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 45m
- When
- Every day
- Estimated price
- €70–350
- Website
- ryanair.com
Flights from Klagenfurt Airport to Adolfo Suárez Madrid–Barajas Airport via Palma Mallorca
- Ave. Duration
- 4h 30m
- When
- Sunday
- Estimated price
- €130–230
Flights from Klagenfurt Airport to Adolfo Suárez Madrid–Barajas Airport via London Stansted
- Ave. Duration
- 6h
- When
- Saturday
- Estimated price
- €130–230
Flights from Venice Marco Polo Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 40m
- When
- Every day
- Estimated price
- €40–140
Flights from Zagreb Franjo Tuđman Airport to Adolfo Suárez Madrid–Barajas Airport via Palma Mallorca
- Ave. Duration
- 5h 10m
- When
- Thursday
- Estimated price
- €55–170
Flights from Zagreb Franjo Tuđman Airport to Adolfo Suárez Madrid–Barajas Airport via Milan Bergamo
- Ave. Duration
- 5h 15m
- When
- Saturday and Friday
- Estimated price
- €55–170
- Website
- aireuropa.com
Flights from Venice Marco Polo Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 40m
- When
- Every day
- Estimated price
- €60–160
Flights from Trieste – Friuli Venezia Giulia Airport to Adolfo Suárez Madrid–Barajas Airport via Rome
- Ave. Duration
- 5h 55m
- When
- Every day
- Estimated price
- €90–180
Flights from Trieste – Friuli Venezia Giulia Airport to Adolfo Suárez Madrid–Barajas Airport via Barcelona
- Ave. Duration
- 4h 50m
- When
- Tuesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €70–190
Flights from Munich International Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 50m
- When
- Every day
- Estimated price
- €90–200
- Website
- ita-airways.com
Flights from Trieste – Friuli Venezia Giulia Airport to Adolfo Suárez Madrid–Barajas Airport via Rome
- Ave. Duration
- 5h 46m
- When
- Every day
- Estimated price
- €75–240
- Website
- lufthansa-city.com
Flights from Munich International Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 45m
- When
- Every day
- Estimated price
- €70–350
- Website
- flyulendo.com
Flights from Venice Marco Polo Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 40m
- When
- Tuesday, Thursday, Saturday, and Sunday
- Estimated price
- €28–120
- Website
- brusselsairlines.com
Flights from Ljubljana to Adolfo Suárez Madrid–Barajas Airport via Brussels
- Ave. Duration
- 6h 40m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €110–200
- Website
- airfrance.com
Flights from Ljubljana to Adolfo Suárez Madrid–Barajas Airport via Paris Charles de Gaulle
- Ave. Duration
- 7h 10m
- When
- Every day
- Estimated price
- €95–440
- Website
- swiss.com
Flights from Ljubljana to Adolfo Suárez Madrid–Barajas Airport via Zurich
- Ave. Duration
- 7h 50m
- When
- Monday and Tuesday
- Estimated price
- €100–370
- Website
- croatiaairlines.com
Flights from Zagreb Franjo Tuđman Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 3h
- When
- Monday, Thursday, and Saturday
- Estimated price
- €140–210
- Phone
- +43 (0)5 1717
- Website
- Railjet
Train from Villach Hbf to Venezia Mestre
- *
- €35–55
Train from Villach Hbf to Venezia Mestre
- *
- €35–55
Train from Villach Hbf to Udine
- *
- €21–35
Train from Villach Hbf to Muenchen Hbf
- *
- €45–75
Train from Udine to Venezia S. Lucia
- *
- €24–35
- Phone
- +39 06 8937 1892
- Website
- Italo Treno
Train from Venezia Mestre to Milano Centrale
- Ave. Duration
- 2h 16m
- Frequency
- Hourly
- Estimated price
- €30–65
- Website
- Italo Treno
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from Milano Centrale to Lyon Part Dieu
- Ave. Duration
- 4h 39m
- Frequency
- 4 times a day
- Estimated price
- €55–90
- Website
- Trenitalia
Train from Udine to Venezia S. Lucia
- Ave. Duration
- 2h 19m
- Frequency
- Every 30 minutes
- Estimated price
- €16–28
- Website
- Trenitalia
- Phone
- +34 91 232 03 20
- Website
- Renfe Viajeros
Train from Lyon Part Dieu to Barcelona-Sants
- Ave. Duration
- 4h 48m
- Frequency
- Twice daily
- Estimated price
- €80–130
- Website
- Renfe Viajeros
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 2m
- Frequency
- 4 times a day
- Estimated price
- €75–120
- 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
- Every 30 minutes
- Estimated price
- €90–170
- 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 19m
- Frequency
- Hourly
- Estimated price
- €60–120
- Website
- Iryo
- Phone
- +34 900 759 781
- Website
- Ouigo
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 17m
- Frequency
- Every 2 hours
- Estimated price
- €55–100
- Website
- Ouigo
- Phone
- _AUSTRIAN_RAILWAYS_(ÖBB)
- Website
- Austrian Railways
Train from Villach Hbf to Kranj
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- €14–27
- Website
- Austrian Railways
Train from Villach Hbf to Ljubljana
- Ave. Duration
- 1h 31m
- Frequency
- Hourly
- Estimated price
- €20–40
- Website
- Austrian Railways
Train from Villach Hbf to Udine
- Ave. Duration
- 1h 45m
- Frequency
- 6 times a week
- Estimated price
- €23–45
- Website
- Austrian Railways
- Phone
- +43 (0) 5 1717
- Website
- ÖBB EuroCity
Train from Villach Hbf to Kranj
- Ave. Duration
- 1h 27m
- Frequency
- 4 times a week
- Estimated price
- €15–28
- Website
- ÖBB EuroCity
- Website
- ÖBB EuroCity
Train from Villach Hbf to Ljubljana
- Ave. Duration
- 1h 55m
- Frequency
- 4 times a week
- Estimated price
- €21–40
- Website
- ÖBB EuroCity
- Website
- ÖBB EuroCity
Train from Villach Hbf to Muenchen Hbf
- Ave. Duration
- 4h 14m
- Frequency
- 4 times a day
- Estimated price
- €70–130
- Website
- ÖBB EuroCity
- Website
- ÖBB EuroCity
- Phone
- +49 30 2970
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Villach Hbf to Muenchen Hbf
- Ave. Duration
- 4h 14m
- Frequency
- Every 4 hours
- Estimated price
- €60–260
- Website
- Deutsche Bahn Intercity (DB IC)
- Phone
- +43 (0) 51717
- Website
- Nightjet
Night train from Villach Hbf to Venezia Mestre
- Ave. Duration
- 3h 22m
- Frequency
- 4 times a day
- Estimated price
- €22–95
- Website
- Nightjet
- Sleeper Carriage
- €85–95
- Couchette Carriage
- €55–65
- Seating Carriage
- €22–27
- Phone
- +39 06 68475475
- Website
- Trenitalia Frecce
Train from Venezia S. Lucia to Genova P.Za Principe
- Ave. Duration
- 4h 7m
- Frequency
- Twice daily
- Estimated price
- €60–120
- Schedules at
- Trenitalia Frecce
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Villach Hbf to Milano, Autostazione Lampugnano
- Ave. Duration
- 7h 20m
- Frequency
- Once daily
- Estimated price
- €40–65
- Website
- Flixbus
Bus from Milan to Madrid
- Ave. Duration
- 23h 5m
- Frequency
- Once daily
- Estimated price
- €130–210
- Website
- Flixbus
- Phone
- +386 40 121 900
- [email protected]
- Website
- slovenija.eu.com
Shuttle from Ljubljana, Avtobusna Postaja to Zagreb Airport
- Ave. Duration
- 1h 30m
- Frequency
- On demand
- Estimated price
- €120–220
- Schedules at
- slovenija.eu.com
- 1 -3 persons
- €170
- 4-8 persons
- €220
- Phone
- +386 1 320 4530
- [email protected]
- Website
- GoOpti
Shuttle from Ljubljana, Avtobusna Postaja to Zagreb Airport
- Ave. Duration
- 1h 57m
- Frequency
- On demand
- Estimated price
- €28–470
- Website
- GoOpti
- Shared
- €28–75
- Private
- €140–180
- Phone
- +4-0263-21.55.00
- Website
- tabitatour.ro
Bus from Padova to Méndez Álvaro Estación Sur
- Ave. Duration
- 27h 35m
- Frequency
- Once a week
- Estimated price
- €120–160
- Schedules at
- tabitatour.ro
- Phone
- +43 5 17 17
- [email protected]
- Website
- ÖBB-Postbus
Bus from Hauptbahnhof to Udine stazione
- Ave. Duration
- 1h 46m
- Frequency
- Every 3 hours
- Estimated price
- €30–50
- Website
- ÖBB-Postbus
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from Genoa - Via Fanti d'Italia Bus Stop to Nice - Airport Bus Station Terminal 1
- Ave. Duration
- 4h 5m
- Frequency
- Every 4 hours
- Estimated price
- €17–35
- Website
- BlaBlaCar Bus
Bus from Nice - Airport Bus Station Terminal 1 to Estación Sur de Autobuses
- Ave. Duration
- 20h 45m
- Frequency
- Once daily
- Estimated price
- €120–230
- 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
More Questions & Answers
Villach to Madrid bus services, operated by FlixBus, arrive at Milano, Autostazione Lampugnano station.
Villach to Madrid train services, operated by Railjet, arrive at Venezia Mestre station.
Yes, the driving distance between Villach to Madrid is 1949 km. It takes approximately 20h 48m to drive from Villach to Madrid.
Book your Villach to Madrid train tickets online with Omio.
Book your Villach to Madrid bus tickets online with Omio and FlixBus.
There are 7030+ hotels available in Madrid.






































































