There are 11 ways to get from Milan to Vigo by train, plane, train (Trenitalia, TGV, Renfe), bus, car ferry, towncar, train (Trenitalia, Renfe, TGV), or car
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 Milano Malpensa Airport, fly to Vigo
best- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Vigo (VGO)plane MXP - VGO
7h 55m€86–247Train
- Take the train from Milano Centrale to Lyon Part Dieutrain Fr
- Take the train from Lyon Part Dieu to Montpellier Saint-Rochtrain Tgv
- Take the train from Montpellier Saint-Roch to Madrid-Puerta de Atocha-Almudena Grandestrain
- Take the train from Madrid Chamartín to Vigo Urzaiztrain Ave
20h 12m€289–519Bus
- Take the bus from Milano, Autostazione Lampugnano to Lyonbus 729 / ...
- Take the bus from Lyon - Gerland Bus Station to Centro Coordenador de Transportes de Bragabus
- Take the bus from Centro Coordenador de Transportes de Braga to Vigo Urzáizbus
30h 24m€139–247Train, car ferry
- Take the train from Milano Centrale to Genova P.Za Principetrain Ic
- Take the carferry from Port of Genoa to Port de Barcelonacarferry
- Take the train from Barcelona-Sants to Vigo Urzaiztrain Alv
38h 48m€268–406Fly Milan Linate Airport to Vigo
- Fly from Milan Linate Airport (LIN) to Vigo (VGO)plane LIN - VGO
7h 53m€184–344Fly Milan Linate Airport to Francisco De Sá Carneiro Airport, towncar
- Fly from Milan Linate Airport (LIN) to Francisco De Sá Carneiro Airport (OPO)plane LIN - OPO
- Take a town car from Porto - Aeroporto Francisco Sá Carneiro to Vigotowncar
7h 48m€232–422Train to Milano Malpensa Airport, fly to Francisco De Sá Carneiro Airport, towncar
- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Francisco De Sá Carneiro Airport (OPO)plane MXP - OPO
- Take a town car from Porto - Aeroporto Francisco Sá Carneiro to Vigotowncar
8h 25m€213–405Bus to Il Caravaggio International Airport, fly to Francisco De Sá Carneiro Airport, towncar
- Take the bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airportbus
- Fly from Il Caravaggio International Airport (BGY) to Francisco De Sá Carneiro Airport (OPO)plane BGY - OPO
- Take a town car from Porto - Aeroporto Francisco Sá Carneiro to Vigotowncar
8h 37m€240–453Train via Girona
- Take the train from Milano Centrale to Lyon Part Dieutrain Fr
- Take the train from Lyon Part Dieu to Gironatrain
- Take the train from Girona to Madrid-Puerta de Atocha-Almudena Grandestrain Ave
- Take the train from Madrid Chamartín to Vigo Urzaiztrain Ave
20h 13m€289–584Train, bus
- Take the train from Milano P.Garibaldi to Chambery Challes Les Eauxtrain Tgv
- Take the bus from Chambéry - Rue Dr Vernier to Centro Coordenador de Transportes de Valençabus Linha Lyon Express
31h 3m€136–200Drive 1,837.5 km
- Drive from Milan to Vigocar 1,837.5 km
20h 25m€296–427
Milan to Vigo by train
Questions & Answers
The cheapest way to get from Milan to Vigo is to train and fly which costs €85 - €250 and takes 7h 55m.
The fastest way to get from Milan to Vigo is to fly and towncar which takes 7h 48m and costs €230 - €430.
No, there is no direct bus from Milan to Vigo. However, there are services departing from Milano, Autostazione Lampugnano and arriving at Vigo Urzáiz via Lyon - Gerland Bus Station and Centro Coordenador de Transportes de Braga. The journey, including transfers, takes approximately 30h 24m.
No, there is no direct train from Milan to Vigo. However, there are services departing from Milano Centrale and arriving at Vigo Urzaiz via Lyon Part Dieu, Montpellier Saint-Roch, Madrid-Atocha Cercanías and Madrid Chamartín. The journey, including transfers, takes approximately 20h 12m.
The distance between Milan and Vigo is 1493 km. The road distance is 1837.5 km.
The best way to get from Milan to Vigo without a car is to train which takes 20h 12m and costs €280 - €550.
It takes approximately 7h 55m to get from Milan to Vigo, including transfers.
Milan to Vigo bus services, operated by FlixBus, depart from Milano, Autostazione Lampugnano station.
Milan to Vigo train services, operated by Trenitalia, depart from Milano Centrale station.
The best way to get from Milan to Vigo is to train which takes 20h 12m and costs €280 - €550. Alternatively, you can bus, which costs €130 - €250 and takes 30h 24m, you could also fly, which costs €180 - €350 and takes 7h 53m.
What companies run services between Milan, Italy and Vigo, Spain?
You can take a train from Milano Centrale to Vigo Urzaiz via Lyon Part Dieu, Montpellier Saint-Roch, Madrid-Puerta De Atocha-Almudena Grandes, Madrid-Atocha Cercanías, and Madrid Chamartín in around 20h 12m. Alternatively, you can take a bus from Milano, Autostazione Lampugnano to Vigo Urzáiz via Lyon - Gerland Bus Station and Centro Coordenador de Transportes de Braga in around 30h 24m.
- Website
- iberia.com
Flights from Milano Malpensa Airport to Vigo via Barcelona
- Ave. Duration
- 6h 20m
- When
- Monday, Wednesday, Thursday, Saturday, Sunday, and Friday
- Estimated price
- €75–170
Flights from Milano Malpensa Airport to Vigo via Madrid
- Ave. Duration
- 5h 58m
- When
- Every day
- Estimated price
- €75–360
Flights from Milan Linate Airport to Vigo via Madrid
- Ave. Duration
- 5h 25m
- When
- Every day
- Estimated price
- €180–400
Flights from Milan Linate Airport to Vigo via Barcelona
- Ave. Duration
- 5h 45m
- When
- Saturday
- Estimated price
- €85–340
Flights from Milan Linate Airport to Francisco De Sá Carneiro Airport via Madrid
- Ave. Duration
- 5h 7m
- When
- Every day
- Estimated price
- €75–320
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- Trenord
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- Flixbus
Bus from Milano, Autostazione Lampugnano to Lyon
- Ave. Duration
- 7h 10m
- Frequency
- Every 3 hours
- Estimated price
- €35–55
- Website
- Flixbus
- Phone
- +39 010 209 4591
- booking@gnv.it
- Website
- Grandi Navi Veloci
Car ferry from Port of Genoa to Port de Barcelona
- Ave. Duration
- 20h 45m
- Frequency
- Twice a week
- Estimated price
- €80–120
- Website
- Grandi Navi Veloci
- Phone
- (+351) 220 971 653
- info@vmtransfers.com
- Website
- VM Transfers
Towncar from Porto - Aeroporto Francisco Sá Carneiro to Vigo
- Ave. Duration
- 2h 32m
- Frequency
- On demand
- Estimated price
- €180
- Website
- VM Transfers
Towncar from Porto - Aeroporto Francisco Sá Carneiro to Vigo
- Ave. Duration
- 2h 32m
- Frequency
- On demand
- Estimated price
- €180
- Website
- VM Transfers
Towncar from Porto - Aeroporto Francisco Sá Carneiro to Vigo
- Ave. Duration
- 2h 32m
- Frequency
- On demand
- Estimated price
- €180
- Website
- VM Transfers
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
Italy Travel Guides
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
Milan to Vigo bus services, operated by FlixBus, arrive at Lyon station.
Milan to Vigo train services, operated by Trenitalia, arrive at Lyon Part Dieu station.
Yes, the driving distance between Milan to Vigo is 1837 km. It takes approximately 20h 25m to drive from Milan to Vigo.
Book your Milan to Vigo train tickets online with Omio.
Book your Milan to Vigo bus tickets online with Omio.
There are 3598+ hotels available in Vigo.














