There are 11 ways to get from Madrid to Villach by plane, shuttle, train (Renfe, Ouigo, Trenitalia), bus, car, or 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 5m€180–481Fly to Venice Marco Polo Airport, train
cheapest- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Venice Marco Polo Airport (VCE)plane MAD - VCE
- Take the train from Venezia Mestre to Villach Hbftrain
9h 22m€72–228Train
- 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 Milano Centraletrain Fr
- Take the train from Milano Centrale to Venezia Mestretrain Fr
- Take the train from Venezia Mestre to Villach Hbftrain Rjx / ...
21h 58m€246–456Bus via Milan
- Take the bus from Madrid to Milanbus FlixBus N1138
- Take the bus from Milano, Autostazione Lampugnano to Villach Hbfbus N456 / ...
31h 10m€185–283Drive 1,949.3 km
- Drive from Madrid to Villachcar 1,949.3 km
20h 59m€329–474Fly to Klagenfurt Airport
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Klagenfurt Airport (KLU)plane MAD - KLU
8h 7m€185–501Fly to Trieste – Friuli Venezia Giulia Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Trieste – Friuli Venezia Giulia Airport (TRS)plane MAD - TRS
- Take the train from Trieste Airport to Villach Hbftrain
10h 10m€97–261Fly 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
10h 6m€102–569Fly 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 32m€126–437Fly to Bologna Guglielmo Marconi Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Bologna Guglielmo Marconi Airport (BLQ)plane MAD - BLQ
- Take the train from Bologna centrale to Venezia Mestretrain
- Take the train from Venezia Mestre to Villach Hbftrain
10h 32m€102–281Bus
- Take the bus from Méndez Álvaro Estación Sur to Padovabus
- Take the bus from Padua to Villach Hbfbus N456 / ...
32h 40m€148–186
Madrid to Villach by train
Comparing Your Travel Options
The cheapest way to get from Madrid to Villach is to fly and train which costs €70 - €230 and takes 9h 22m.
The fastest way to get from Madrid to Villach is to fly and shuttle which takes 7h 5m and costs €180 - €490.
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, Lyon Part Dieu, Milano Centrale and Venezia Mestre. The journey, including transfers, takes approximately 21h 58m.
The distance between Madrid and Villach is 1700 km. The road distance is 1949.3 km.
The best way to get from Madrid to Villach without a car is to train which takes 21h 58m and costs €240 - €460.
It takes approximately 7h 5m 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 21h 58m and costs €240 - €460. Alternatively, you can bus via Milan, which costs €180 - €290 and takes 31h 10m, you could also fly, which costs €180 - €500 and takes 8h 7m.
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, Lyon Part Dieu, Milano Centrale, and Venezia Mestre in around 21h 58m. Alternatively, you can take a bus from Madrid to Villach Hbf via Milano, Autostazione Lampugnano in around 31h 10m.
- Website
- iberia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Ljubljana
- Ave. Duration
- 2h 40m
- When
- Saturday
- Estimated price
- €65–310
Flights from Adolfo Suárez Madrid–Barajas Airport to Ljubljana via Barcelona
- Ave. Duration
- 5h 40m
- When
- Thursday and Sunday
- Estimated price
- €60–260
Flights from Adolfo Suárez Madrid–Barajas Airport to Venice Marco Polo Airport
- Ave. Duration
- 2h 26m
- When
- Every day
- Estimated price
- €60–170
Flights from Adolfo Suárez Madrid–Barajas Airport to Venice Marco Polo Airport via Barcelona
- Ave. Duration
- 4h 55m
- When
- Monday and Thursday
- Estimated price
- €65–170
Flights from Adolfo Suárez Madrid–Barajas Airport to Zagreb Franjo Tuđman Airport
- Ave. Duration
- 2h 45m
- When
- Thursday
- Estimated price
- €70–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Munich International Airport
- Ave. Duration
- 2h 38m
- When
- Every day
- Estimated price
- €80–200
Flights from Adolfo Suárez Madrid–Barajas Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 2h 23m
- When
- Every day
- Estimated price
- €50–170
- Website
- ryanair.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Klagenfurt Airport via London Stansted
- Ave. Duration
- 8h 30m
- When
- Sunday
- Estimated price
- €100–370
Flights from Adolfo Suárez Madrid–Barajas Airport to Klagenfurt Airport via Palma Mallorca
- Ave. Duration
- 6h 27m
- When
- Saturday
- Estimated price
- €90–350
Flights from Adolfo Suárez Madrid–Barajas Airport to Klagenfurt Airport via Ibiza, Palma Mallorca
- Ave. Duration
- 7h 25m
- When
- Saturday
- Estimated price
- €90–350
Flights from Adolfo Suárez Madrid–Barajas Airport to Klagenfurt Airport via Valencia, Palma Mallorca
- Ave. Duration
- 7h 35m
- When
- Saturday
- Estimated price
- €90–350
Flights from Adolfo Suárez Madrid–Barajas Airport to Trieste – Friuli Venezia Giulia Airport via Naples
- Ave. Duration
- 7h 25m
- When
- Friday and Saturday
- Estimated price
- €70–230
Flights from Adolfo Suárez Madrid–Barajas Airport to Venice Marco Polo Airport
- Ave. Duration
- 2h 30m
- When
- Thursday, Friday, Sunday, Monday, Tuesday, and Saturday
- Estimated price
- €40–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 2h 20m
- When
- Thursday, Friday, Saturday, Sunday, and Monday
- Estimated price
- €45–160
Flights from Adolfo Suárez Madrid–Barajas Airport to Bologna Guglielmo Marconi Airport via Ibiza
- Ave. Duration
- 4h 30m
- When
- Sunday
- Estimated price
- €45–160
- Website
- vueling.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Ljubljana via Barcelona
- Ave. Duration
- 5h 40m
- When
- Thursday and Sunday
- Estimated price
- €60–260
Flights from Adolfo Suárez Madrid–Barajas Airport to Venice Marco Polo Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €60–170
Flights from Adolfo Suárez Madrid–Barajas Airport to Venice Marco Polo Airport via Barcelona
- Ave. Duration
- 4h 55m
- When
- Monday and Thursday
- Estimated price
- €65–170
Flights from Adolfo Suárez Madrid–Barajas Airport to Munich International Airport
- Ave. Duration
- 2h 38m
- When
- Every day
- Estimated price
- €80–200
Flights from Adolfo Suárez Madrid–Barajas Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 2h 23m
- When
- Every day
- Estimated price
- €50–170
- Website
- lufthansa.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Trieste – Friuli Venezia Giulia Airport via Frankfurt
- Ave. Duration
- 5h 20m
- When
- Monday, Wednesday, Friday, and Saturday
- Estimated price
- €110–380
Flights from Adolfo Suárez Madrid–Barajas Airport to Trieste – Friuli Venezia Giulia Airport via Rome
- Ave. Duration
- 4h 50m
- When
- Saturday
- Estimated price
- €70–230
Flights from Adolfo Suárez Madrid–Barajas Airport to Zagreb Franjo Tuđman Airport via Munich International Airport
- Ave. Duration
- 5h 10m
- When
- Every day
- Estimated price
- €70–350
Flights from Adolfo Suárez Madrid–Barajas Airport to Munich International Airport
- Ave. Duration
- 2h 33m
- When
- Every day
- Estimated price
- €65–340
- Website
- ita-airways.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Trieste – Friuli Venezia Giulia Airport via Rome
- Ave. Duration
- 5h 6m
- When
- Every day
- Estimated price
- €70–250
- Website
- aireuropa.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Venice Marco Polo Airport
- Ave. Duration
- 2h 30m
- When
- Every day
- Estimated price
- €45–160
Flights from Adolfo Suárez Madrid–Barajas Airport to Munich International Airport
- Ave. Duration
- 2h 40m
- When
- Every day
- Estimated price
- €75–230
- Website
- airfrance.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Ljubljana via Paris Charles de Gaulle
- Ave. Duration
- 5h 40m
- When
- Monday, Wednesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €90–430
Flights from Adolfo Suárez Madrid–Barajas Airport to Trieste – Friuli Venezia Giulia Airport via Rome
- Ave. Duration
- 4h 50m
- When
- Saturday
- Estimated price
- €70–230
- Website
- lufthansa-city.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Munich International Airport
- Ave. Duration
- 2h 30m
- When
- Every day
- Estimated price
- €65–340
- Website
- transavia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Ljubljana via Paris Orly
- Ave. Duration
- 4h 55m
- When
- Thursday and Saturday
- Estimated price
- €90–430
- Website
- skyalps.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Klagenfurt Airport via Rome
- Ave. Duration
- 5h
- When
- Sunday
- Estimated price
- €90–350
- Website
- flyulendo.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Venice Marco Polo Airport
- Ave. Duration
- 2h 30m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- €28–120
- Website
- easyjet.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Venice Marco Polo Airport via Geneva
- Ave. Duration
- 4h 20m
- When
- Friday
- Estimated price
- €45–220
- Website
- croatiaairlines.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Zagreb Franjo Tuđman Airport
- Ave. Duration
- 2h 45m
- When
- Monday, Thursday, and Saturday
- Estimated price
- €85–220
- Phone
- +34 91 232 03 20
- Website
- Renfe AVE
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 2m
- Frequency
- Hourly
- Estimated price
- €85–150
- Website
- Renfe AVE
- Phone
- +34 900 926 851
- [email protected]
- Website
- Iryo
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 24m
- Frequency
- Hourly
- Estimated price
- €55–100
- Website
- Iryo
- Phone
- +34 900 759 781
- Website
- Ouigo
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 23m
- Frequency
- Every 4 hours
- Estimated price
- €45–80
- Website
- Ouigo
- Phone
- +34 91 232 03 20
- Website
- Renfe Viajeros
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 29m
- Frequency
- Twice daily
- Estimated price
- €75–110
- Website
- Renfe Viajeros
Train from Barcelona-Sants to Lyon Part Dieu
- Ave. Duration
- 5h 6m
- Frequency
- Once daily
- Estimated price
- €80–120
- Website
- Renfe Viajeros
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from Lyon Part Dieu to Milano Centrale
- Ave. Duration
- 4h 44m
- Frequency
- Twice daily
- Estimated price
- €50–75
- Website
- Trenitalia
Train from Bologna centrale to Venezia Mestre
- Ave. Duration
- 1h 57m
- Frequency
- Hourly
- Estimated price
- €18–25
- Website
- Trenitalia
- Phone
- +39 06 5210550
- Website
- Trenitalia Frecce
Train from Milano Centrale to Venezia Mestre
- Ave. Duration
- 2h 15m
- Frequency
- Hourly
- Estimated price
- €35–60
- Website
- Trenitalia Frecce
Train from Bologna centrale to Venezia Mestre
- Ave. Duration
- 1h 22m
- Frequency
- Hourly
- Estimated price
- €21–35
- Website
- Trenitalia Frecce
- Phone
- +43 (0)5 1717
- Website
- Railjet
Train from Venezia Mestre to Villach Hbf
- *
- €35–55
Train from Trieste Airport to Villach Hbf
- *
- €26–40
Train from Venezia Mestre to Villach Hbf
- *
- €35–55
Train from Salzburg Hbf to Villach Hbf
- *
- €29–45
Train from Venezia Mestre to Villach Hbf
- *
- €35–55
- Phone
- _AUSTRIAN_RAILWAYS_(ÖBB)
- Website
- Austrian Railways
Train from Trieste Airport to Villach Hbf
- Ave. Duration
- 2h 41m
- Frequency
- 4 times a week
- Estimated price
- €30–50
- Website
- Austrian Railways
Train from Salzburg Hbf to Villach Hbf
- Ave. Duration
- 2h 25m
- Frequency
- 3 times a day
- Estimated price
- €35–60
- Website
- Austrian Railways
- Phone
- +386 1 29 13 331
- [email protected]
- Website
- Slovenske železnice (SŽ)
Train from Ljubljana to Villach Hbf
- Ave. Duration
- 1h 40m
- Frequency
- Every 4 hours
- Estimated price
- €8
- Website
- Slovenske železnice (SŽ)
- Phone
- +385 60 333 444
- [email protected]
- Website
- HŽ Putnički prijevoz (HŽPP)
Train from Ljubljana to Villach Hbf
- Ave. Duration
- 1h 40m
- Frequency
- Twice daily
- Estimated price
- €8
- Website
- HŽ Putnički prijevoz (HŽPP)
- Phone
- +49 30 200 73-0
- [email protected]
- Website
- Transdev GmbH
Train from Muenchen Ost to Salzburg Hbf
- Ave. Duration
- 1h 42m
- Frequency
- Hourly
- Estimated price
- €26–40
- Schedules at
- Transdev GmbH
- Phone
- +43 1 89900
- [email protected]
- Website
- Westbahn
Train from Muenchen Ost to Salzburg Hbf
- Ave. Duration
- 1h 41m
- Frequency
- 5 times a day
- Estimated price
- €28–45
- Website
- Westbahn
- Phone
- +32 70 79 79 79
- Website
- Belgian Railways
Train from Muenchen Ost to Salzburg Hbf
- Ave. Duration
- 1h 40m
- Frequency
- Twice daily
- Estimated price
- €26–40
- Website
- Belgian Railways
- Phone
- +31 30 751 5155
- Website
- Nederlandse Spoorwegen (NS)
Train from Muenchen Ost to Salzburg Hbf
- Ave. Duration
- 1h 42m
- Frequency
- Once daily
- Estimated price
- €15–30
- Website
- Nederlandse Spoorwegen (NS)
- Phone
- +43 (0) 51717
- Website
- Nightjet
Train from Muenchen Ost to Salzburg Hbf
- Ave. Duration
- 1h 47m
- Frequency
- Once a week
- Estimated price
- €18–90
- Website
- Nightjet
- 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
- Nightjet
- Sleeper Carriage
- €80–90
- Couchette Carriage
- €50–60
- Seating Carriage
- €20–24
- Phone
- +43 (0) 5 1717
- Website
- ÖBB Intercity
Train from Salzburg Hbf to Villach Hbf
- Ave. Duration
- 2h 21m
- Frequency
- Every 4 hours
- Estimated price
- €19–40
- Website
- ÖBB Intercity
- Website
- ÖBB Intercity
- Phone
- +49 30 2970
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Salzburg Hbf to Villach Hbf
- Ave. Duration
- 2h 25m
- Frequency
- 4 times a week
- Estimated price
- €30–70
- Website
- Deutsche Bahn Intercity (DB IC)
- Phone
- +43 (0) 5 1717
- Website
- ÖBB EuroCity
Train from Salzburg Hbf to Villach Hbf
- Ave. Duration
- 2h 25m
- Frequency
- 3 times a week
- Estimated price
- €42–48
- Website
- ÖBB EuroCity
- Website
- ÖBB EuroCity
- Phone
- +39 06 8937 1892
- Website
- Italo Treno
Train from Bologna centrale to Venezia Mestre
- Ave. Duration
- 1h 21m
- Frequency
- Hourly
- Estimated price
- €18–29
- Website
- Italo Treno
- Phone
- +39 06 68475475
- Website
- Trenitalia Intercity
Train from Bologna centrale to Venezia Mestre
- Ave. Duration
- 1h 36m
- Frequency
- Twice daily
- Estimated price
- €16–30
- Website
- Trenitalia Intercity
- Phone
- +386 1 320 4530
- [email protected]
- Website
- GoOpti
Shuttle from Zgornji Brnik, Letališče Jožeta Pučnika Ljubljana to Klagenfurt - Hauptbahnhof
- Ave. Duration
- 1h 8m
- Frequency
- On demand
- Estimated price
- €80–146
- Website
- GoOpti
- Private
- €146
Shuttle from Zagreb Airport to Ljubljana
- Ave. Duration
- 1h 56m
- Frequency
- On demand
- Estimated price
- €28–320
- Website
- GoOpti
- Shared
- €28–75
- Private
- €140–180
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Madrid to Milan
- Ave. Duration
- 23h 5m
- Frequency
- Once daily
- Estimated price
- €140–220
- Website
- Flixbus
Bus from Milano, Autostazione Lampugnano to Villach Hbf
- Ave. Duration
- 7h 5m
- Frequency
- 6 times a week
- Estimated price
- €40–70
- Website
- Flixbus
Bus from Padua to Villach Hbf
- Ave. Duration
- 3h 55m
- Frequency
- Twice daily
- Estimated price
- €22–35
- Website
- Flixbus
- 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
Booking & Getting There
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 1949 km. It takes approximately 20h 59m 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 2359+ hotels available in Villach.

































































































