There are 14 ways to get from Milan to Cardiff by train, plane, train (Trenitalia, Eurostar), bus, night train, car, car 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.
Train to Milano Malpensa Airport, fly to Bristol Airport, train
best- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Bristol Airport (BRS)plane MXP - BRS
- Take the train from Bristol Temple Meads to Cardiff Centraltrain
6h 24m£69–189Train
- Take the train from Milano Centrale to Paris Gare De Lyontrain Fr
- Take the train from Paris Nord to London St Pancras Intltrain Eil
- Take the train from London Paddington to Cardiff Centraltrain
13h 19m£288–503Bus
- Take the bus from Milano, Autostazione Lampugnano to Luxembourgbus
- Take the bus from Luxembourg P+R Bouillon to London Victoriabus
- Take the bus from London Victoria to University REbus 507 / ...
24h 29m£104–205Train, night train
- Take the train from Milano Centrale to Zuerich Hbtrain Ec
- Take the night train from Zürich HB to Amsterdam Centraalnighttrain Nj
- Take the train from Amsterdam Centraal to London St. Pancras Int.train
- Take the train from London Paddington to Cardiff Centraltrain
24h 25m£421–1,119Fly Milan Linate Airport to Bristol Airport, train
- Fly from Milan Linate Airport (LIN) to Bristol Airport (BRS)plane LIN - BRS
- Take the train from Bristol Temple Meads to Cardiff Centraltrain
7h 33m£102–276Fly Milan Linate Airport to Cardiff Airport
- Fly from Milan Linate Airport (LIN) to Cardiff Airport (CWL)plane LIN - CWL
8h 12m£128–241Bus to Il Caravaggio International Airport, fly to Bristol Airport, train
- Take the bus from Piazza Luigi di Savoia to Bergamo Airport Bus Stationbus
- Fly from Il Caravaggio International Airport (BGY) to Bristol Airport (BRS)plane BGY - BRS
- Take the train from Bristol Temple Meads to Cardiff Centraltrain
6h 31m£69–195Fly Milan Linate Airport to London Heathrow Airport, train
- Fly from Milan Linate Airport (LIN) to London Heathrow Airport (LHR)plane LIN - LHR
- Take the train from London Paddington to Cardiff Centraltrain
7h 12m£147–397Fly Milan Linate Airport to London City Airport, train
- Fly from Milan Linate Airport (LIN) to London City Airport (LCY)plane LIN - LCY
- Take the train from London Paddington to Cardiff Centraltrain
7h 26m£139–425Fly Milan Linate Airport to London Gatwick Airport, train
- Fly from Milan Linate Airport (LIN) to London Gatwick Airport (LGW)plane LIN - LGW
- Take the train from Gatwick Airport to Readingtrain
- Take the train from Reading to Cardiff Centraltrain
8h 13m£115–362Train to Milano Malpensa Airport, fly to London Gatwick Airport, train
- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to London Gatwick Airport (LGW)plane MXP - LGW
- Take the train from Gatwick Airport to Readingtrain
- Take the train from Reading to Cardiff Centraltrain
8h 49m£101–285Bus via Ghent
- Take the bus from Milano, Autostazione Lampugnano to Gentbus
- Take the bus from Ghent Dampoort to London Victoriabus
- Take the bus from London Victoria to University REbus 507 / ...
30h 40mDrive, Eurotunnel
- Drive from Milan to Calais-Fréthuncar
- Take the car train from Calais-Fréthun to Folkestonecartrain
- Drive from Folkestone to Cardiffcar
15h 23mDrive, car ferry
- Drive from Milan to Calaiscar
- Take the car ferry from Calais to Port of Dovercarferry
- Drive from Port of Dover to Cardiffcar
16h 26m£194–312
Milan to Cardiff by train and subway
Questions & Answers
The cheapest way to get from Milan to Cardiff is to train and fly which costs £65 - £190 and takes 6h 24m.
The fastest way to get from Milan to Cardiff is to train and fly which takes 6h 24m and costs £65 - £190.
No, there is no direct bus from Milan to Cardiff. However, there are services departing from Milano, Autostazione Lampugnano and arriving at University RE via Luxembourg P+R Bouillon and London Victoria. The journey, including transfers, takes approximately 24h 29m.
No, there is no direct train from Milan to Cardiff. However, there are services departing from Milano Centrale and arriving at Cardiff Central via Paris Gare de Lyon, Paris Nord, King's Cross St. Pancras station and London Paddington. The journey, including transfers, takes approximately 13h 19m.
The distance between Milan and Cardiff is 736 miles.
The best way to get from Milan to Cardiff without a car is to train which takes 13h 19m and costs £280 - £550.
It takes approximately 6h 24m to get from Milan to Cardiff, including transfers.
Milan to Cardiff bus services, operated by BlaBlaCar Bus, depart from Milano, Autostazione Lampugnano station.
Milan to Cardiff train services, operated by Trenitalia, depart from Milano Centrale station.
The best way to get from Milan to Cardiff is to train which takes 13h 19m and costs £280 - £550. Alternatively, you can bus, which costs £100 - £210 and takes 24h 29m, you could also fly, which costs £120 - £250 and takes 8h 12m.
What companies run services between Milan, Italy and Cardiff, Wales?
You can take a train from Milano Centrale to Cardiff Central via Paris Gare de Lyon, Paris Nord, London St Pancras Intl, King's Cross St. Pancras station, Paddington, and London Paddington in around 13h 19m. Alternatively, you can take a bus from Milano, Autostazione Lampugnano to University RE via Luxembourg P+R Bouillon and London Victoria in around 24h 29m.
- Website
- easyjet.com
Flights from Milano Malpensa Airport to Bristol Airport
- Ave. Duration
- 2h 6m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- £35–120
Flights from Milano Malpensa Airport to Bristol Airport via Paris Charles de Gaulle
- Ave. Duration
- 4h 21m
- When
- Wednesday, Thursday, Friday, and Sunday
- Estimated price
- £35–120
Flights from Milano Malpensa Airport to Bristol Airport via Bordeaux
- Ave. Duration
- 4h 15m
- When
- Tuesday
- Estimated price
- £35–120
Flights from Milan Linate Airport to Bristol Airport via Amsterdam Schiphol
- Ave. Duration
- 4h 56m
- When
- Wednesday, Thursday, Friday, and Sunday
- Estimated price
- £75–160
Flights from Milan Linate Airport to Bristol Airport via Paris Charles de Gaulle
- Ave. Duration
- 4h 10m
- When
- Friday
- Estimated price
- £75–160
Flights from Milan Linate Airport to Bristol Airport via Berlin Brandenburg
- Ave. Duration
- 6h 40m
- When
- Monday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- £75–160
Flights from Milan Linate Airport to Bristol Airport via Edinburgh
- Ave. Duration
- 7h
- When
- Tuesday, Thursday, and Sunday
- Estimated price
- £75–160
Flights from Milan Linate Airport to London Gatwick Airport
- Ave. Duration
- 1h 55m
- When
- Every day
- Estimated price
- £45–200
Flights from Milan Linate Airport to London Gatwick Airport via Paris Charles de Gaulle
- Ave. Duration
- 3h 35m
- When
- Friday and Sunday
- Estimated price
- £45–200
Flights from Milan Linate Airport to London Gatwick Airport via Amsterdam Schiphol
- Ave. Duration
- 4h 10m
- When
- Tuesday
- Estimated price
- £45–200
Flights from Milano Malpensa Airport to London Gatwick Airport
- Ave. Duration
- 2h
- When
- Every day
- Estimated price
- £28–120
Flights from Milano Malpensa Airport to London Gatwick Airport via Paris Charles de Gaulle
- Ave. Duration
- 3h 50m
- When
- Friday and Thursday
- Estimated price
- £28–120
- Website
- britishairways.com
Flights from Milan Linate Airport to London Heathrow Airport
- Ave. Duration
- 2h 1m
- When
- Every day
- Estimated price
- £65–230
Flights from Milan Linate Airport to London City Airport
- Ave. Duration
- 1h 55m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- £75–270
- Website
- klm.com
Flights from Milan Linate Airport to Bristol Airport via Amsterdam Schiphol
- Ave. Duration
- 6h 16m
- When
- Every day
- Estimated price
- £50–260
Flights from Milan Linate Airport to Cardiff Airport via Amsterdam Schiphol
- Ave. Duration
- 6h 13m
- When
- Every day
- Estimated price
- £70–410
Flights from Milan Linate Airport to London City Airport via Amsterdam Schiphol
- Ave. Duration
- 4h 12m
- When
- Every day
- Estimated price
- £65–350
- Website
- airfrance.com
Flights from Milan Linate Airport to Cardiff Airport via Amsterdam Schiphol
- Ave. Duration
- 7h 10m
- When
- Monday, Wednesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- £70–280
Flights from Milan Linate Airport to London Heathrow Airport via Paris Charles de Gaulle
- Ave. Duration
- 4h 32m
- When
- Every day
- Estimated price
- £45–260
Flights from Milan Linate Airport to London Gatwick Airport via Paris Charles de Gaulle
- Ave. Duration
- 4h 17m
- When
- Every day
- Estimated price
- £35–220
- Website
- ita-airways.com
Flights from Milan Linate Airport to London City Airport
- Ave. Duration
- 1h 54m
- When
- Every day
- Estimated price
- £60–240
- Website
- ryanair.com
Flights from Il Caravaggio International Airport to Bristol Airport
- Ave. Duration
- 2h 5m
- When
- Tuesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- £40–130
Flights from Il Caravaggio International Airport to Bristol Airport via Dublin
- Ave. Duration
- 4h 48m
- When
- Tuesday, Wednesday, Friday, and Sunday
- Estimated price
- £40–130
- Website
- lufthansa.com
Flights from Milan Linate Airport to London Heathrow Airport via Frankfurt
- Ave. Duration
- 4h 5m
- When
- Every day
- Estimated price
- £95–390
Flights from Milan Linate Airport to London City Airport via Frankfurt
- Ave. Duration
- 3h 35m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- £120–410
- Website
- brusselsairlines.com
Flights from Milan Linate Airport to London Heathrow Airport via Brussels
- Ave. Duration
- 4h
- When
- Every day
- Estimated price
- £100–270
- Website
- aerlingus.com
Flights from Milan Linate Airport to Bristol Airport via Dublin
- Ave. Duration
- 5h 10m
- When
- Saturday
- Estimated price
- £55–280
- Website
- airbaltic.com
Flights from Milan Linate Airport to London Heathrow Airport
- Ave. Duration
- 2h 5m
- When
- Monday, Tuesday, Wednesday, Thursday, and Saturday
- Estimated price
- £55–210
- Website
- eurowings.com
Flights from Milano Malpensa Airport to London Gatwick Airport via Cologne Bonn
- Ave. Duration
- 3h 45m
- When
- Wednesday
- Estimated price
- £45–160
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- £3–5
- Website
- https://www.trenord.it/en/
- Phone
- +44 3457 000 125
- gwr.feedback@gwr.com
- Website
- gwr.com
Train from Bristol Temple Meads to Cardiff Central
- Ave. Duration
- 43 min
- Frequency
- Hourly
- Estimated price
- £16–35
- Website
- https://www.gwr.com/
Train from London Paddington to Cardiff Central
- Ave. Duration
- 2h 21m
- Frequency
- Hourly
- Estimated price
- £60–120
- Website
- https://www.gwr.com/
Train from Gatwick Airport to Reading
- Ave. Duration
- 1h 28m
- Frequency
- Hourly
- Estimated price
- £23–45
- Website
- https://www.gwr.com/
Train from Reading to Cardiff Central
- Ave. Duration
- 1h 56m
- Frequency
- Hourly
- Estimated price
- £45–95
- Website
- https://www.gwr.com/
Train from Bristol Temple Meads to Cardiff Central
- Ave. Duration
- 1h 1m
- Frequency
- 6 times a week
- Estimated price
- £19–27
- Website
- https://www.crosscountrytrains.co.uk/
- Phone
- +39.06.5210550
- Website
- trenitalia.com
Train from Milano Centrale to Paris Gare De Lyon
- Ave. Duration
- 6h 57m
- Frequency
- Twice daily
- Estimated price
- £95–160
- Website
- https://www.trenitalia.com/en.html
- Phone
- +44 343 218 6186
- Website
- eurostar.com
Train from Paris Nord to London St Pancras Intl
- Ave. Duration
- 2h 28m
- Frequency
- Hourly
- Estimated price
- £130–220
- Website
- https://www.eurostar.com/rw-en
- Phone
- +39 06 68475475
- ufficiogruppi@trenitalia.it
- Website
- trenitalia.com
Train from Milano Centrale to Zuerich Hb
- Ave. Duration
- 3h 17m
- Frequency
- Every 2 hours
- Estimated price
- £45–90
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- £60–90
- 2nd Class
- £45–65
- Phone
- +41 848 446 688
- Website
- sbb.ch
Night train from Zürich HB to Amsterdam Centraal
- Ave. Duration
- 11h 13m
- Frequency
- Once daily
- Estimated price
- £250–750
- Website
- https://www.sbb.ch/en
- Phone
- +31 30 751 5155
- Website
- ns.nl
Train from Amsterdam Centraal to London St. Pancras Int.
- Ave. Duration
- 4h 17m
- Frequency
- 5 times a day
- Estimated price
- £50–130
- Website
- https://www.ns.nl/en
- Phone
- +44 (0) 8443 35 35 35
- Website
- leshuttle.com
Car train from Calais-Fréthun to Folkestone
- Ave. Duration
- 35 min
- Frequency
- Hourly
- Website
- https://www.leshuttle.com/uk-en
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Milano, Autostazione Lampugnano to Luxembourg
- Ave. Duration
- 9h 55m
- Frequency
- 3 times a day
- Estimated price
- £45–85
- Website
- https://www.blablacar.co.uk/bus
- Phone
- +420 222 222 221
- info@regiojet.cz
- Website
- regiojet.com
Bus from Luxembourg P+R Bouillon to London Victoria
- Ave. Duration
- 9h 20m
- Frequency
- 4 times a week
- Estimated price
- £30–50
- Website
- https://regiojet.com/
- Phone
- 08717 81 81 81
- Website
- nationalexpress.com
Bus from London Victoria to University RE
- Ave. Duration
- 3h 30m
- Frequency
- Hourly
- Estimated price
- £28–70
- Website
- https://www.nationalexpress.com/en
- info@flibco.com
- Website
- flibco.com
Bus from Piazza Luigi di Savoia to Bergamo Airport Bus Station
- Ave. Duration
- 50 min
- Frequency
- Hourly
- Estimated price
- £6–18
- Website
- https://www.flibco.com/en
- customerservices@terravision.eu
- Website
- terravision.eu
Bus from Piazza Luigi di Savoia to Bergamo Airport Bus Station
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- £4–22
- Website
- https://www.terravision.eu/
- Phone
- +39 02 3008 9000
- mail@autostradale.it
- Website
- autostradale.it
Bus from Piazza Luigi di Savoia to Bergamo Airport Bus Station
- Ave. Duration
- 1h
- Frequency
- Every 30 minutes
- Estimated price
- £3–7
- Website
- https://autostradale.it/?lang=en-GB
- Phone
- +393293958604
- info@pistoiaviaggi.com
- Website
- pistoia-viaggi.it
Bus from Milano, Autostazione Lampugnano to Gent
- Ave. Duration
- 18h 6m
- Frequency
- Once a week
- Schedules at
- pistoia-viaggi.it
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- https://www.flixbus.fr
Bus from Ghent Dampoort to London Victoria
- Ave. Duration
- 7h 20m
- Frequency
- 6 times a week
- Estimated price
- £19–35
- Website
- https://www.flixbus.co.uk
- Phone
- 01304 44 88 88
- customer.services@poferries.com
- Website
- poferries.com
Car ferry from Calais to Port of Dover
- Ave. Duration
- 1h 35m
- Frequency
- Every 2 hours
- Estimated price
- £20–27
- Website
- https://www.poferries.com/en
- Phone
- +353 818 300 400
- info@irishferries.fr
- Website
- irishferries.com
Car ferry from Calais to Port of Dover
- Ave. Duration
- 1h 30m
- Frequency
- Every 3 hours
- Estimated price
- £6–40
- Website
- https://www.irishferries.com/uk-en/Travel-to-Ireland
Want to know more about travelling around United Kingdom
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
Travelling to the UK: What do I need to know?
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
Milan to Cardiff bus services, operated by BlaBlaCar Bus, arrive at Luxembourg station.
Cardiff is 1h behind Milan. It is currently 6:39 PM in Milan and 5:39 PM in Cardiff.
Milan to Cardiff train services, operated by Trenitalia, arrive at Paris Gare De Lyon station.
Book your Milan to Cardiff train tickets online with Omio.
Book your Milan to Cardiff bus tickets online with Omio.
There are 1708+ hotels available in Cardiff.





















































































