There are 14 ways to get from Cardiff to Milan by plane, train (Eurostar, Trenitalia), bus, car, car train, train, or car ferry
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly Cardiff Airport to Milan Linate Airport
best- Fly from Cardiff Airport (CWL) to Milan Linate Airport (LIN)plane CWL - LIN
7h 30m€93–462Train to Bristol Airport, fly to Milano Malpensa Airport, train
cheapest- Take the train from Cardiff Central to Bristol Temple Meadstrain
- Fly from Bristol Airport (BRS) to Milano Malpensa Airport (MXP)plane BRS - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibalditrain
6h 29m€71–194Train via Paris
- Take the train from Cardiff Central to London Paddingtontrain
- Take the train from London St Pancras Intl to Paris Nordtrain Eil
- Take the train from Paris Gare De Lyon to Milano Centraletrain Fr
12h 50m€346–563Bus
- Take the bus from Park Place to London Victoria Coach Station Arrivalsbus 507 / ...
- Take the bus from London Victoria Green Line Station to Brussels Midi / Brussels South Westbus
- Take the bus from Brussels - Midi Train Station to Milano, Autostazione Lampugnanobus
25h 2m€117–207Drive, Eurotunnel
- Drive from Cardiff to Folkestonecar
- Take the cartrain from Folkestone to Calais-Fréthuncartrain
- Drive from Calais-Fréthun to Milancar
15h 23m€364–472Train to Bristol Airport, fly to Milan Linate Airport
- Take the train from Cardiff Central to Bristol Temple Meadstrain
- Fly from Bristol Airport (BRS) to Milan Linate Airport (LIN)plane BRS - LIN
7h 24m€113–341Train to Bristol Airport, fly to Il Caravaggio International Airport, bus
- Take the train from Cardiff Central to Bristol Temple Meadstrain
- Fly from Bristol Airport (BRS) to Il Caravaggio International Airport (BGY)plane BRS - BGY
- Take the bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoiabus
6h 28m€82–261Train to London City Airport, fly to Milan Linate Airport
- Take the train from Cardiff Central to London Paddingtontrain
- Fly from London City Airport (LCY) to Milan Linate Airport (LIN)plane LCY - LIN
6h 33m€164–570Train to London Heathrow Airport, fly to Milan Linate Airport
- Take the train from Cardiff Central to London Paddingtontrain
- Fly from London Heathrow Airport (LHR) to Milan Linate Airport (LIN)plane LHR - LIN
6h 28m€167–442Train, train to London Gatwick Airport, fly to Milano Malpensa Airport
- Take the train from Cardiff Central to Readingtrain
- Take the train from Reading to Gatwick Airporttrain
- Fly from London Gatwick Airport (LGW) to Milano Malpensa Airport (MXP)plane LGW - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibalditrain
8h 17m€120–303Train to London Stansted Airport, fly to Il Caravaggio International Airport, bus
- Take the train from Cardiff Central to London Paddingtontrain
- Fly from London Stansted Airport (STN) to Il Caravaggio International Airport (BGY)plane STN - BGY
- Take the bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoiabus
7h 59m€126–405Train
- Take the train from Cardiff Central to London Paddingtontrain
- Take the train from London St Pancras Intl to Brussel-Zuid / Bruxelles-Miditrain Eil
- Take the train from Brussel-Zuid / Bruxelles-Midi to Chambery Challes Les Eauxtrain
- Take the train from Chambery Challes Les Eaux to Milano Centraletrain Fr
15h 19m€560–921Bus via Ghent
- Take the bus from Park Place to London Victoria Coach Station Arrivalsbus 507 / ...
- Take the bus from London Victoria to Ghent Dampoortbus
- Take the bus from Gent to Milano, Autostazione Lampugnanobus
29h 47mDrive, car ferry
- Drive from Cardiff to Port of Dovercar
- Take the carferry from Port of Dover to Calaiscarferry
- Drive from Calais to Milancar
16h 25m€257–426
Cardiff to Milan by bus
Comparing Your Travel Options
The cheapest way to get from Cardiff to Milan is to train and fly which costs €70 - €200 and takes 6h 29m.
The fastest way to get from Cardiff to Milan is to train and fly which takes 6h 28m and costs €160 - €450.
No, there is no direct bus from Cardiff to Milan. However, there are services departing from Park Place and arriving at Milano, Autostazione Lampugnano via London Victoria Green Line Station and Brussels - Midi Train Station. The journey, including transfers, takes approximately 25h 2m.
No, there is no direct train from Cardiff to Milan. However, there are services departing from Cardiff Central and arriving at Milano Centrale via Paddington, London St Pancras Intl, Paris Nord and Paris Gare De Lyon. The journey, including transfers, takes approximately 12h 50m.
The distance between Cardiff and Milan is 1168 km.
The best way to get from Cardiff to Milan without a car is to train via Paris which takes 12h 50m and costs €340 - €600.
It takes approximately 7h 30m to get from Cardiff to Milan, including transfers.
Cardiff to Milan bus services, operated by National Express, depart from Park Place station.
Cardiff to Milan train services, operated by Great Western Railway (GWR), depart from Cardiff Central station.
The best way to get from Cardiff to Milan is to fly which takes 7h 30m and costs €90 - €470. Alternatively, you can train via Paris, which costs €340 - €600 and takes 12h 50m, you could also bus, which costs €110 - €210 and takes 25h 2m.
What companies run services between Cardiff, Wales and Milan, Italy?
KLM flies from Cardiff Airport (CWL) to Milan Linate Airport (LIN) 3 times a day. Alternatively, you can take a train from Cardiff Central to Milano Centrale via London Paddington, Paddington, King's Cross St. Pancras station, London St Pancras Intl, Paris Nord, and Paris Gare De Lyon in around 12h 50m.
- Website
- easyjet.com
Flights from Bristol Airport to Milan Linate Airport via Amsterdam Schiphol
- Ave. Duration
- 4h 7m
- When
- Monday, Tuesday, Thursday, Friday, and Sunday
- Estimated price
- €90–300
Flights from Bristol Airport to Milan Linate Airport via Edinburgh
- Ave. Duration
- 4h 25m
- When
- Tuesday
- Estimated price
- €90–300
Flights from Bristol Airport to Milan Linate Airport via Paris Charles de Gaulle
- Ave. Duration
- 5h 5m
- When
- Monday and Thursday
- Estimated price
- €90–300
Flights from Bristol Airport to Milano Malpensa Airport
- Ave. Duration
- 2h
- When
- Monday, Wednesday, and Friday
- Estimated price
- €50–130
Flights from Bristol Airport to Milano Malpensa Airport via Paris Charles de Gaulle
- Ave. Duration
- 4h 12m
- When
- Monday, Wednesday, Saturday, and Sunday
- Estimated price
- €50–130
Flights from London Gatwick Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 57m
- When
- Every day
- Estimated price
- €35–140
- Website
- ryanair.com
Flights from Bristol Airport to Il Caravaggio International Airport
- Ave. Duration
- 2h 5m
- When
- Monday, Tuesday, Friday, and Saturday
- Estimated price
- €55–200
Flights from Bristol Airport to Il Caravaggio International Airport via Prague
- Ave. Duration
- 4h 35m
- When
- Wednesday
- Estimated price
- €55–200
Flights from Bristol Airport to Il Caravaggio International Airport via Dublin
- Ave. Duration
- 5h 10m
- When
- Wednesday
- Estimated price
- €55–200
Flights from London Stansted Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 55m
- When
- Every day
- Estimated price
- €23–190
Flights from London Stansted Airport to Il Caravaggio International Airport via Eindhoven
- Ave. Duration
- 3h 25m
- When
- Monday
- Estimated price
- €23–190
Flights from London Stansted Airport to Il Caravaggio International Airport via Cologne Bonn
- Ave. Duration
- 3h 35m
- When
- Friday
- Estimated price
- €23–190
Flights from London Stansted Airport to Il Caravaggio International Airport via Prague
- Ave. Duration
- 4h 15m
- When
- Sunday
- Estimated price
- €23–190
- Website
- britishairways.com
Flights from London City Airport to Milan Linate Airport
- Ave. Duration
- 1h 53m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €110–320
Flights from London Heathrow Airport to Milan Linate Airport
- Ave. Duration
- 2h 4m
- When
- Every day
- Estimated price
- €70–230
- Website
- klm.com
Flights from Cardiff Airport to Milan Linate Airport via Amsterdam Schiphol
- Ave. Duration
- 5h 25m
- When
- Every day
- Estimated price
- €85–450
Flights from Bristol Airport to Milan Linate Airport via Amsterdam Schiphol
- Ave. Duration
- 4h 31m
- When
- Every day
- Estimated price
- €60–330
Flights from London City Airport to Milan Linate Airport via Amsterdam Schiphol
- Ave. Duration
- 3h 57m
- When
- Sunday, Monday, Tuesday, Wednesday, Thursday, and Friday
- Estimated price
- €85–480
- Website
- ita-airways.com
Flights from London City Airport to Milan Linate Airport
- Ave. Duration
- 1h 50m
- When
- Every day
- Estimated price
- €75–410
- Website
- lufthansa.com
Flights from Bristol Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 4h 10m
- When
- Monday
- Estimated price
- €70–220
Flights from London City Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 4h 40m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €230–800
Flights from London Heathrow Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 4h 17m
- When
- Every day
- Estimated price
- €110–440
- Website
- airfrance.com
Flights from London Heathrow Airport to Milan Linate Airport via Paris Charles de Gaulle
- Ave. Duration
- 4h 1m
- When
- Every day
- Estimated price
- €60–350
- Website
- condor.com
Flights from London Gatwick Airport to Milano Malpensa Airport via Frankfurt
- Ave. Duration
- 4h 13m
- When
- Every day
- Estimated price
- €65–210
- Website
- swiss.com
Flights from Bristol Airport to Milano Malpensa Airport via Zurich
- Ave. Duration
- 4h 55m
- When
- Saturday
- Estimated price
- €45–260
Flights from London Gatwick Airport to Milano Malpensa Airport via Zurich
- Ave. Duration
- 4h 45m
- When
- Monday, Tuesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €65–260
- Website
- luxair.lu
Flights from London City Airport to Milan Linate Airport via Luxembourg
- Ave. Duration
- 3h 40m
- When
- Sunday
- Estimated price
- €290–420
- Phone
- +44 (0)345 7000 125
- gwr.feedback@gwr.com
- Website
- Great Western Railway (GWR)
Train from Cardiff Central to London Paddington
- Ave. Duration
- 1h 52m
- Frequency
- Hourly
- Estimated price
- €70–130
- Website
- Great Western Railway (GWR)
Train from Cardiff Central to Bristol Temple Meads
- Ave. Duration
- 52 min
- Frequency
- Hourly
- Estimated price
- €19–35
- Website
- Great Western Railway (GWR)
Train from Cardiff Central to Bristol Temple Meads
- Ave. Duration
- 52 min
- Frequency
- Hourly
- Estimated price
- €19–35
- Website
- Great Western Railway (GWR)
Train from Cardiff Central to Bristol Temple Meads
- Ave. Duration
- 52 min
- Frequency
- Hourly
- Estimated price
- €19–35
- Website
- Great Western Railway (GWR)
Train from Cardiff Central to London Paddington
- Ave. Duration
- 1h 52m
- Frequency
- Hourly
- Estimated price
- €70–130
- Website
- Great Western Railway (GWR)
Train from Cardiff Central to London Paddington
- Ave. Duration
- 1h 52m
- Frequency
- Hourly
- Estimated price
- €70–130
- Website
- Great Western Railway (GWR)
Train from Cardiff Central to Reading
- Ave. Duration
- 1h 26m
- Frequency
- Hourly
- Estimated price
- €50–100
- Website
- Great Western Railway (GWR)
Train from Reading to Gatwick Airport
- Ave. Duration
- 1h 31m
- Frequency
- Hourly
- Estimated price
- €26–50
- Website
- Great Western Railway (GWR)
Train from Cardiff Central to London Paddington
- Ave. Duration
- 1h 52m
- Frequency
- Hourly
- Estimated price
- €70–130
- Website
- Great Western Railway (GWR)
Train from Cardiff Central to London Paddington
- Ave. Duration
- 1h 52m
- Frequency
- Hourly
- Estimated price
- €70–130
- Website
- Great Western Railway (GWR)
- Phone
- +44 (0)3432 186 186
- Website
- Eurostar
Train from London St Pancras Intl to Paris Nord
- Ave. Duration
- 2h 28m
- Frequency
- Hourly
- Estimated price
- €170–280
- Website
- Eurostar
Train from London St Pancras Intl to Brussel-Zuid / Bruxelles-Midi
- Ave. Duration
- 2h 1m
- Frequency
- Hourly
- Estimated price
- €140–230
- Website
- Eurostar
Train from Brussel-Zuid / Bruxelles-Midi to Chambery Challes Les Eaux
- Ave. Duration
- 4h 29m
- Frequency
- 5 times a week
- Estimated price
- €300–500
- Website
- Eurostar
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from Paris Gare De Lyon to Milano Centrale
- Ave. Duration
- 6h 42m
- Frequency
- 4 times a day
- Estimated price
- €100–150
- Website
- Trenitalia
Train from Chambery Challes Les Eaux to Milano Centrale
- Ave. Duration
- 3h 21m
- Frequency
- 4 times a day
- Estimated price
- €40–55
- Website
- Trenitalia
- Phone
- +44 (0) 8443 35 35 35
- customer.support@eurotunnel.com
- Website
- LeShuttle
Car train from Folkestone to Calais-Fréthun
- Ave. Duration
- 35 min
- Frequency
- Hourly
- Estimated price
- €140
- Website
- LeShuttle
- Standard fare
- €140
- Phone
- 03333 211 202
- Website
- Transport for Wales
Train from Cardiff Central to Bristol Temple Meads
- Ave. Duration
- 57 min
- Frequency
- Every 4 hours
- Estimated price
- €15–24
- Website
- Transport for Wales
Train from Cardiff Central to Bristol Temple Meads
- Ave. Duration
- 57 min
- Frequency
- Every 4 hours
- Estimated price
- €15–24
- Website
- Transport for Wales
Train from Cardiff Central to Bristol Temple Meads
- Ave. Duration
- 57 min
- Frequency
- Every 4 hours
- Estimated price
- €15–24
- Website
- Transport for Wales
Train from Cardiff Central to Bristol Temple Meads
- Ave. Duration
- 49 min
- Frequency
- Once a week
- Estimated price
- €19–30
- Website
- Cross Country
Train from Cardiff Central to Bristol Temple Meads
- Ave. Duration
- 49 min
- Frequency
- Once a week
- Estimated price
- €19–30
- Website
- Cross Country
Train from Cardiff Central to Bristol Temple Meads
- Ave. Duration
- 49 min
- Frequency
- Once a week
- Estimated price
- €19–30
- Website
- Cross Country
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- Trenord
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 44 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 44 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
- Phone
- +44 (0)3717 81 81 81
- Website
- National Express
Bus from Park Place to London Victoria Coach Station Arrivals
- Ave. Duration
- 3h 42m
- Frequency
- Hourly
- Estimated price
- €28–50
- Website
- National Express
Bus from Park Place to London Victoria Coach Station Arrivals
- Ave. Duration
- 3h 42m
- Frequency
- Hourly
- Estimated price
- €28–50
- Website
- National Express
- Phone
- +420 222 222 221
- info@regiojet.com
- Website
- RegioJet
Bus from London Victoria Green Line Station to Brussels Midi / Brussels South West
- Ave. Duration
- 6h 30m
- Frequency
- Twice a week
- Estimated price
- €23–40
- Website
- RegioJet
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from Brussels - Midi Train Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 12h 50m
- Frequency
- Twice daily
- Estimated price
- €65–120
- Website
- BlaBlaCar Bus
- customerservices@terravision.eu
- Website
- TERRAVISION
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €5–23
- Website
- TERRAVISION
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €5–23
- Website
- TERRAVISION
- Phone
- 035.319366
- ticket@orioshuttle.com
- Website
- orioshuttle.com
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €11–14
- Schedules at
- orioshuttle.com
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €11–14
- Schedules at
- orioshuttle.com
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- Flixbus
Bus from London Victoria to Ghent Dampoort
- Ave. Duration
- 7h 45m
- Frequency
- 4 times a week
- Estimated price
- €30–50
- Website
- Flixbus
- Phone
- +393293958604
- info@pistoiaviaggi.com
- Website
- pistoia-viaggi.it
Bus from Gent to Milano, Autostazione Lampugnano
- Ave. Duration
- 16h 20m
- Frequency
- Once a week
- Schedules at
- pistoia-viaggi.it
- Phone
- +353 818 300 400
- info@irishferries.fr
- Website
- Irish Ferries
Car ferry from Port of Dover to Calais
- Ave. Duration
- 1h 30m
- Frequency
- Every 3 hours
- Estimated price
- €30–90
- Website
- Irish Ferries
Want to know more about travelling around Italy
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
Travelling to the UK: What do I need to know?
Read the travel guide
Getting to Milan from the airport
Read the travel guide
Booking & Getting There
Cardiff to Milan bus services, operated by National Express, arrive at London Victoria Coach Station Arrivals.
Milan is 1h ahead of Cardiff. It is currently 12:16 PM in Cardiff and 1:16 PM in Milan.
Cardiff to Milan train services, operated by Great Western Railway (GWR), arrive at London Paddington station.
Book your Cardiff to Milan train tickets online with Omio.
Book your Cardiff to Milan bus tickets online with Omio.
There are 13838+ hotels available in Milan.



























































