There are 10 ways to get from Perth to Cardiff by bus, plane, train, 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.
Bus to Edinburgh Airport, fly to Bristol Airport, train
best- Take the bus from Leonard Street to Airport
- Fly from Edinburgh Airport (EDI) to Bristol Airport (BRS)EDI - BRS
- Take the train from Bristol Temple Meads to Cardiff Central
4h 41mBus
cheapest- Take the bus from Bus Station to Buchanan Bus Station
- Take the bus from Buchanan Bus Station to Shudehill Interchange
- Take the bus from Shudehill Interchange to Bus Station
- Take the bus from Bus Station to Kingsway GD
13h 9m£32–108Train via Glasgow
- Take the train from Perth to Glasgow Queen Street
- Take the train from Glasgow Central to Crewe
- Take the train from Crewe to Cardiff Central
8h 43m£71–306Drive 409.5 mi
- Drive from Perth to Cardiff409.5 mi
7h 40m£102–147Bus to Edinburgh Airport, fly to Cardiff Airport
- Take the bus from Leonard Street to Airport
- Fly from Edinburgh Airport (EDI) to Cardiff Airport (CWL)EDI - CWL
4h 39mTrain to Glasgow Airport, fly to Bristol Airport, train
- Take the train from Perth to Glasgow Queen Street
- Fly from Glasgow Airport (GLA) to Bristol Airport (BRS)GLA - BRS
- Take the train from Bristol Temple Meads to Cardiff Central
5h 32m£44–147Bus to Edinburgh Airport, fly to Birmingham Airport, train
- Take the bus from Leonard Street to Airport
- Fly from Edinburgh Airport (EDI) to Birmingham Airport (BHX)EDI - BHX
- Take the train from Birmingham New Street to Cardiff Central
6h 6mTrain to Aberdeen Airport, fly to Bristol Airport, train
- Take the train from Perth to Aberdeen
- Fly from Aberdeen Airport (ABZ) to Bristol Airport (BRS)ABZ - BRS
- Take the train from Bristol Temple Meads to Cardiff Central
6h 45m£109–315Train
- Take the train from Perth to CreweInverness - London Euston
- Take the train from Crewe to Cardiff CentralManchester Piccadilly - Cardiff Central / ...
8h 53m£96–193Train #2
- Take the train from Perth to Edinburgh WaverleyPerth - Edinburgh / ...
- Take the train from Edinburgh Waverley to Cardiff CentralEdinburgh - Cardiff Central
9h 32m£106–625
Perth to Cardiff by train and foot
Questions & Answers
The cheapest way to get from Perth to Cardiff is to bus which costs £30 - £110 and takes 13h 9m.
The fastest way to get from Perth to Cardiff is to train and fly which takes 5h 32m and costs £40 - £150.
No, there is no direct bus from Perth station to Cardiff. However, there are services departing from Bus Station and arriving at Kingsway GD via Buchanan Bus Station, Shudehill Interchange and Bus Station. The journey, including transfers, takes approximately 13h 9m.
No, there is no direct train from Perth to Cardiff. However, there are services departing from Perth and arriving at Cardiff Central via Glasgow Central and Crewe. The journey, including transfers, takes approximately 8h 43m.
The distance between Perth and Cardiff is 403 miles. The road distance is 411.9 miles.
The best way to get from Perth to Cardiff without a car is to train via Glasgow which takes 8h 43m and costs £70 - £310.
It takes approximately 4h 41m to get from Perth to Cardiff, including transfers.
Perth to Cardiff bus services, operated by FlixBus, depart from Bus Station.
Perth to Cardiff train services, operated by ScotRail, depart from Perth station.
The best way to get from Perth to Cardiff is to train via Glasgow which takes 8h 43m and costs £70 - £310. Alternatively, you can bus, which costs £30 - £110 and takes 13h 9m.
What companies run services between Perth, Scotland and Cardiff, Wales?
You can take a train from Perth to Cardiff Central via Glasgow Queen Street, Glasgow Central, and Crewe in around 8h 43m. Alternatively, you can take a bus from Bus Station to Kingsway GD via Buchanan Bus Station, Shudehill Interchange, and Bus Station in around 13h 9m.
Transport is disrupted due to the Russia-Ukraine war. Read more
- Website
- easyjet.com
Flights from Edinburgh Airport to Bristol Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- £25–90
Flights from Edinburgh Airport to Bristol Airport via Belfast (Aldergrove)
- Ave. Duration
- 3h 11m
- When
- Monday, Friday, and Sunday
- Estimated price
- £25–90
Flights from Glasgow Airport to Bristol Airport
- Ave. Duration
- 1h 11m
- When
- Every day
- Estimated price
- £23–75
Flights from Glasgow Airport to Bristol Airport via Belfast (Aldergrove)
- Ave. Duration
- 2h 56m
- When
- Monday, Wednesday, Friday, and Saturday
- Estimated price
- £23–75
Flights from Edinburgh Airport to Birmingham Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- £25–85
Flights from Edinburgh Airport to Birmingham Airport via Belfast (Aldergrove)
- Ave. Duration
- 3h 7m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- £25–85
- Website
- aerlingus.com
Flights from Edinburgh Airport to Cardiff Airport via Dublin
- Ave. Duration
- 3h 50m
- When
- Thursday
- Estimated price
- £55–260
Flights from Edinburgh Airport to Birmingham Airport via Dublin
- Ave. Duration
- 3h 10m
- When
- Sunday
- Estimated price
- £35–170
- Website
- loganair.co.uk
Flights from Edinburgh Airport to Cardiff Airport
- Ave. Duration
- 1h 40m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- £140–170
Flights from Aberdeen Airport to Bristol Airport
- Ave. Duration
- 1h 30m
- When
- Monday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- £85–200
- Website
- ryanair.com
Flights from Edinburgh Airport to Cardiff Airport via Dublin
- Ave. Duration
- 3h 50m
- When
- Sunday
- Estimated price
- £60–170
Flights from Edinburgh Airport to Birmingham Airport via Dublin
- Ave. Duration
- 3h 10m
- When
- Monday
- Estimated price
- £55–80
- Website
- klm.com
Flights from Edinburgh Airport to Cardiff Airport via Amsterdam Schiphol
- Ave. Duration
- 4h 5m
- When
- Monday to Saturday
- Estimated price
- £65–350
Flights from Aberdeen Airport to Bristol Airport via Amsterdam Schiphol
- Ave. Duration
- 4h
- When
- Monday to Friday
- Estimated price
- £50–280
- Phone
- +44 3457 000 125
- gwr.feedback@gwr.com
- Website
- gwr.com
Train from Bristol Temple Meads to Cardiff Central
- Ave. Duration
- 50 min
- Frequency
- Hourly
- Estimated price
- £18–24
- Website
- https://www.gwr.com/
Train from Bristol Temple Meads to Cardiff Central
- Ave. Duration
- 1h 1m
- Frequency
- 6 times a week
- Estimated price
- £8–26
- Website
- https://www.crosscountrytrains.co.uk/
Train from Birmingham New Street to Cardiff Central
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- £25–85
- Website
- https://www.crosscountrytrains.co.uk/
Train from Edinburgh Waverley to Cardiff Central
- Ave. Duration
- 7h 1m
- Frequency
- 6 times a week
- Estimated price
- £95–550
- Website
- https://www.crosscountrytrains.co.uk/
- Phone
- +44 344 811 0141
- Website
- scotrail.co.uk
Train from Perth to Glasgow Queen Street
- Ave. Duration
- 1h 14m
- Frequency
- Hourly
- Estimated price
- £13–40
- Website
- https://www.scotrail.co.uk/
Train from Perth to Aberdeen
- Ave. Duration
- 1h 44m
- Frequency
- Hourly
- Estimated price
- £20–55
- Website
- https://www.scotrail.co.uk/
Train from Perth to Edinburgh Waverley
- Ave. Duration
- 1h 31m
- Frequency
- Hourly
- Estimated price
- £12–24
- Website
- https://www.scotrail.co.uk/
- Phone
- +44 345 528 0253
- Website
- avantiwestcoast.co.uk
Train from Glasgow Central to Crewe
- Ave. Duration
- 3h 9m
- Frequency
- Every 4 hours
- Estimated price
- £28–160
- Website
- https://www.avantiwestcoast.co.uk/
- Phone
- 03333 211 202
- Website
- tfw.wales
Train from Crewe to Cardiff Central
- Ave. Duration
- 2h 31m
- Frequency
- Hourly
- Estimated price
- £30–110
- Website
- https://tfw.wales/
- Phone
- +44 345 722 5333
- customers@lner.co.uk
- Website
- lner.co.uk
Train from Perth to Aberdeen
- Ave. Duration
- 1h 36m
- Frequency
- Twice a week
- Estimated price
- £65–90
- Website
- https://www.lner.co.uk/
- Anytime Day Single
- £65–90
Train from Perth to Edinburgh Waverley
- Ave. Duration
- 1h 15m
- Frequency
- Twice daily
- Estimated price
- £11–12
- Website
- https://www.lner.co.uk/
- Phone
- +44 330 060 0500
- enquiry@sleeper.scot
- Website
- sleeper.scot
Train from Perth to Crewe
- Ave. Duration
- 5h 43m
- Frequency
- Once daily
- Estimated price
- £65–85
- Website
- https://www.sleeper.scot/
- Sleeper Berth Classic
- £210–230
- Sleeper Seat
- £65–85
- Sleeper Berth Club Solo
- £290–340
Train from Perth to Edinburgh Waverley
- Ave. Duration
- 1h 28m
- Frequency
- Twice daily
- Estimated price
- £60–80
- Website
- https://www.sleeper.scot/
- Sleeper Berth Classic
- £210–230
- Sleeper Seat
- £60–80
- Sleeper Berth Club Solo
- £230–270
- Phone
- +44 (0)131 510 4007
- ride@ember.to
- Website
- ember.to
Bus from Leonard Street to Airport
- Ave. Duration
- 49 min
- Frequency
- Hourly
- Website
- https://www.ember.to/
Rome2Rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Bus Station to Buchanan Bus Station
- Ave. Duration
- 1h 25m
- Frequency
- Hourly
- Estimated price
- £5–8
- Website
- https://www.flixbus.co.uk
Bus from Buchanan Bus Station to Shudehill Interchange
- Ave. Duration
- 5h
- Frequency
- Hourly
- Estimated price
- £15–35
- Website
- https://www.flixbus.co.uk
Bus from Shudehill Interchange to Bus Station
- Ave. Duration
- 3h 50m
- Frequency
- Hourly
- Estimated price
- £7–35
- Website
- https://www.flixbus.co.uk
Bus from Bus Station to Kingsway GD
- Ave. Duration
- 1h 30m
- Frequency
- Every 15 minutes
- Estimated price
- £4–10
- Website
- https://www.flixbus.co.uk
- Phone
- 01698 653164
- enquiries@parksofhamilton.co.uk
- Website
- parksofhamilton.co.uk
Bus from Bus Station to Buchanan Bus Station
- Ave. Duration
- 1h 43m
- Frequency
- Hourly
- Website
- https://www.parksofhamilton.co.uk/
- Phone
- 0141 352 4444
- enquiries@megabus.com
- Website
- uk.megabus.com
Bus from Bus Station to Buchanan Bus Station
- Ave. Duration
- 1h 43m
- Frequency
- Hourly
- Estimated price
- £9–14
- Website
- https://uk.megabus.com
- Phone
- 0141 352 4444
- info@citylink.co.uk
- Website
- citylink.co.uk
Bus from Bus Station to Buchanan Bus Station
- Ave. Duration
- 1h 43m
- Frequency
- 4 times a day
- Estimated price
- £11–16
- Website
- https://www.citylink.co.uk/
- Phone
- 08717 81 81 81
- Website
- nationalexpress.com
Bus from Bus Station to Kingsway GD
- Ave. Duration
- 1h 5m
- Frequency
- Twice daily
- Estimated price
- £16–23
- Website
- https://www.nationalexpress.com/en
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
Want to know more about Flixbus?
Read the travel guide
More Questions & Answers
Perth to Cardiff bus services, operated by FlixBus, arrive at Buchanan Bus Station.
Perth to Cardiff train services, operated by ScotRail, arrive at Glasgow Queen Street station.
Yes, the driving distance between Perth to Cardiff is 412 miles. It takes approximately 7h 40m to drive from Perth to Cardiff.
Book your Perth to Cardiff train tickets online with Omio.
Book your Perth to Cardiff bus tickets online with Omio and FlixBus.
There are 1544+ hotels available in Cardiff.

























































