There are 11 ways to get from Perth to Swansea by train, bus, car, or plane
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train via Glasgow
best- Take the train from Perth to Glasgow Queen Streettrain
- Take the train from Glasgow Central to Crewetrain
- Take the train from Crewe to Swanseatrain
10h 3m£164–269Bus
cheapest- Take the bus from Canal Street to Buchanan Bus Stationbus M9 / ...
- Take the bus from Buchanan Bus Station to Millennium Pointbus
- Take the bus from Birmingham - Jennens Road to Swansea City Bus Stationbus
14h 4m£62–102Drive 413 mi
- Drive from Perth to Swanseacar 413 mi
7h 47m£102–147Bus to Edinburgh Airport, fly to Bristol Airport, train
- Take the bus from Perth station to Edinburgh Airportbus
- Fly from Edinburgh Airport (EDI) to Bristol Airport (BRS)plane EDI - BRS
- Take the train from Bristol Parkway to Swanseatrain
6h 4m£71–188Train
- Take the train from Perth to Crewetrain Inverness - London Euston
- Take the train from Crewe to Swanseatrain Manchester Piccadilly - Milford Haven / ...
10h 13m£130–195Bus, train
- Take the bus from Perth station to George Streetbus
- Take the train from Edinburgh Waverley to Bristol Parkwaytrain
- Take the train from Bristol Parkway to Swanseatrain
11h 2m£218–351Train to Glasgow Airport, fly to Bristol Airport, train
- Take the train from Perth to Glasgow Queen Streettrain
- Fly from Glasgow Airport (GLA) to Bristol Airport (BRS)plane GLA - BRS
- Take the train from Bristol Parkway to Swanseatrain
6h 39m£88–207Bus to Edinburgh Airport, fly to Birmingham Airport, train
- Take the bus from Perth station to Edinburgh Airportbus
- Fly from Edinburgh Airport (EDI) to Birmingham Airport (BHX)plane EDI - BHX
- Take the train from Birmingham New Street to Bristol Parkwaytrain
- Take the train from Bristol Parkway to Swanseatrain
7h 13m£101–232Bus to Edinburgh Airport, fly to Luton Airport, train
- Take the bus from Perth station to Edinburgh Airportbus
- Fly from Edinburgh Airport (EDI) to Luton Airport (LTN)plane EDI - LTN
- Take the train from Luton Airport Parkway to Farringdontrain
- Take the train from London Paddington to Swanseatrain
7h 36m£132–312Train to Glasgow Airport, fly to Birmingham Airport, train
- Take the train from Perth to Glasgow Queen Streettrain
- Fly from Glasgow Airport (GLA) to Birmingham Airport (BHX)plane GLA - BHX
- Take the train from Birmingham New Street to Bristol Parkwaytrain
- Take the train from Bristol Parkway to Swanseatrain
7h 48m£117–246Train to Aberdeen Airport, fly to Bristol Airport, train
- Take the train from Perth to Aberdeentrain
- Fly from Aberdeen Airport (ABZ) to Bristol Airport (BRS)plane ABZ - BRS
- Take the train from Bristol Parkway to Swanseatrain
8h 12m£143–352
Perth to Swansea by train and foot
Comparing Your Travel Options
The cheapest way to get from Perth to Swansea is to bus which costs £60 - £110 and takes 14h 4m.
The fastest way to get from Perth to Swansea is to bus and fly and train which takes 6h 4m and costs £70 - £190.
No, there is no direct bus from Perth to Swansea station. However, there are services departing from Canal Street and arriving at Swansea City Bus Station via Buchanan Bus Station and Birmingham - Jennens Road. The journey, including transfers, takes approximately 14h 4m.
No, there is no direct train from Perth to Swansea. However, there are services departing from Perth and arriving at Swansea via Glasgow Central and Crewe. The journey, including transfers, takes approximately 10h 3m.
The distance between Perth and Swansea is 490 miles. The road distance is 415.4 miles.
The best way to get from Perth to Swansea without a car is to train via Glasgow which takes 10h 3m and costs £160 - £270.
It takes approximately 10h 3m to get from Perth to Swansea, including transfers.
Perth to Swansea bus services, operated by Park's of Hamilton, depart from Canal Street station.
Perth to Swansea train services, operated by ScotRail, depart from Perth station.
The best way to get from Perth to Swansea is to train via Glasgow which takes 10h 3m and costs £160 - £270. Alternatively, you can bus, which costs £60 - £110 and takes 14h 4m.
What companies run services between Perth, Scotland and Swansea, Wales?
You can take a train from Perth to Swansea via Glasgow Queen Street, Glasgow Central, and Crewe in around 10h 3m. Alternatively, you can take a bus from Canal Street to Swansea City Bus Station via Buchanan Bus Station and Birmingham - Jennens Road in around 14h 4m.
- Website
- easyjet.com
Flights from Edinburgh Airport to Bristol Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- £30–100
Flights from Edinburgh Airport to Bristol Airport via Belfast (Aldergrove)
- Ave. Duration
- 3h 5m
- When
- Friday to Sunday
- Estimated price
- £30–100
Flights from Edinburgh Airport to Bristol Airport via Belfast City
- Ave. Duration
- 3h 20m
- When
- Monday and Sunday
- Estimated price
- £30–100
Flights from Glasgow Airport to Bristol Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- £25–90
Flights from Glasgow Airport to Bristol Airport via Belfast City
- Ave. Duration
- 2h 55m
- When
- Monday, Wednesday, Friday, Saturday, and Sunday
- Estimated price
- £25–90
Flights from Edinburgh Airport to Birmingham Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- £27–95
Flights from Edinburgh Airport to Birmingham Airport via Belfast (Aldergrove)
- Ave. Duration
- 3h
- When
- Wednesday
- Estimated price
- £27–95
Flights from Edinburgh Airport to Luton Airport
- Ave. Duration
- 1h 12m
- When
- Every day
- Estimated price
- £21–120
Flights from Edinburgh Airport to Luton Airport via Belfast (Aldergrove)
- Ave. Duration
- 3h 3m
- When
- Sunday to Saturday
- Estimated price
- £21–120
Flights from Glasgow Airport to Birmingham Airport
- Ave. Duration
- 1h 8m
- When
- Every day
- Estimated price
- £23–80
Flights from Glasgow Airport to Birmingham Airport via Belfast (Aldergrove)
- Ave. Duration
- 2h 50m
- When
- Sunday
- Estimated price
- £23–80
- Website
- ryanair.com
Flights from Edinburgh Airport to Bristol Airport via Dublin
- Ave. Duration
- 3h 1m
- When
- Wednesday and Friday
- Estimated price
- £45–110
Flights from Glasgow Airport to Bristol Airport via Dublin
- Ave. Duration
- 3h
- When
- Friday and Monday
- Estimated price
- £45–100
Flights from Edinburgh Airport to Birmingham Airport via Dublin
- Ave. Duration
- 3h 8m
- When
- Sunday, Monday, and Saturday
- Estimated price
- £45–100
Flights from Edinburgh Airport to Luton Airport via Dublin
- Ave. Duration
- 3h 10m
- When
- Sunday
- Estimated price
- £50–75
Flights from Glasgow Airport to Birmingham Airport via Dublin
- Ave. Duration
- 3h 10m
- When
- Sunday
- Estimated price
- £45–100
- Website
- aerlingus.com
Flights from Edinburgh Airport to Birmingham Airport via Belfast City
- Ave. Duration
- 3h
- When
- Every day
- Estimated price
- £35–190
- Website
- loganair.co.uk
Flights from Aberdeen Airport to Bristol Airport
- Ave. Duration
- 1h 30m
- When
- Monday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- £130–230
- Website
- klm.com
Flights from Aberdeen Airport to Bristol Airport via Amsterdam Schiphol
- Ave. Duration
- 4h
- When
- Monday to Friday
- Estimated price
- £55–310
- Phone
- +44 (0)344 811 0141
- Website
- ScotRail
Train from Perth to Glasgow Queen Street
- Ave. Duration
- 1h 12m
- Frequency
- Hourly
- Estimated price
- £24–40
- Website
- ScotRail
Train from Perth to Glasgow Queen Street
- Ave. Duration
- 1h 12m
- Frequency
- Hourly
- Estimated price
- £24–40
- Website
- ScotRail
Train from Perth to Glasgow Queen Street
- Ave. Duration
- 1h 12m
- Frequency
- Hourly
- Estimated price
- £24–40
- Website
- ScotRail
Train from Perth to Aberdeen
- Ave. Duration
- 1h 42m
- Frequency
- Hourly
- Estimated price
- £35–60
- Website
- ScotRail
- Phone
- +44 (0)345 528 0253
- Website
- Avanti West Coast
Train from Glasgow Central to Crewe
- Ave. Duration
- 3h 12m
- Frequency
- Every 4 hours
- Estimated price
- £80–130
- Website
- Avanti West Coast
- Phone
- 03333 211 202
- Website
- Transport for Wales
Train from Crewe to Swansea
- Ave. Duration
- 3h 30m
- Frequency
- Every 3 hours
- Estimated price
- £60–100
- Website
- Transport for Wales
Train from Crewe to Swansea
- Ave. Duration
- 3h 30m
- Frequency
- Every 3 hours
- Estimated price
- £60–100
- Website
- Transport for Wales
- Phone
- +44 (0)345 7000 125
- [email protected]
- Website
- Great Western Railway (GWR)
Train from Bristol Parkway to Swansea
- Ave. Duration
- 1h 29m
- Frequency
- Hourly
- Estimated price
- £30–60
- Website
- Great Western Railway (GWR)
Train from Bristol Parkway to Swansea
- Ave. Duration
- 1h 29m
- Frequency
- Hourly
- Estimated price
- £30–60
- Website
- Great Western Railway (GWR)
Train from Bristol Parkway to Swansea
- Ave. Duration
- 1h 29m
- Frequency
- Hourly
- Estimated price
- £30–60
- Website
- Great Western Railway (GWR)
Train from Bristol Parkway to Swansea
- Ave. Duration
- 1h 29m
- Frequency
- Hourly
- Estimated price
- £30–60
- Website
- Great Western Railway (GWR)
Train from London Paddington to Swansea
- Ave. Duration
- 2h 48m
- Frequency
- Hourly
- Estimated price
- £80–150
- Website
- Great Western Railway (GWR)
Train from Bristol Parkway to Swansea
- Ave. Duration
- 1h 29m
- Frequency
- Hourly
- Estimated price
- £30–60
- Website
- Great Western Railway (GWR)
Train from Bristol Parkway to Swansea
- Ave. Duration
- 1h 29m
- Frequency
- Hourly
- Estimated price
- £30–60
- Website
- Great Western Railway (GWR)
- Phone
- +44 330 060 0500
- Website
- Caledonian Sleeper
Train from Perth to Crewe
- Ave. Duration
- 5h 43m
- Frequency
- 6 times a week
- Estimated price
- £70–100
- Website
- Caledonian Sleeper
- Phone
- +44 3447 369 123
- [email protected]
- Website
- Cross Country
Train from Edinburgh Waverley to Bristol Parkway
- Ave. Duration
- 6h 14m
- Frequency
- Every 2 hours
- Estimated price
- £180–280
- Website
- Cross Country
Train from Birmingham New Street to Bristol Parkway
- Ave. Duration
- 1h 15m
- Frequency
- Hourly
- Estimated price
- £35–55
- Website
- Cross Country
Train from Birmingham New Street to Bristol Parkway
- Ave. Duration
- 1h 15m
- Frequency
- Hourly
- Estimated price
- £35–55
- Website
- Cross Country
- Phone
- +44 (0)345 026 4700
- Website
- Thameslink
Train from Luton Airport Parkway to Farringdon
- Ave. Duration
- 38 min
- Frequency
- Every 15 minutes
- Estimated price
- £17–21
- Website
- Thameslink
Train from Perth to Aberdeen
- Ave. Duration
- 1h 37m
- Frequency
- Once daily
- Estimated price
- £30–45
- Website
- London North Eastern Railway Limited (LNER)
- Phone
- 01698 653164
- [email protected]
- Website
- Park's of Hamilton
Bus from Canal Street to Buchanan Bus Station
- Ave. Duration
- 1h 49m
- Frequency
- Hourly
- Estimated price
- £9–14
- Website
- Park's of Hamilton
- Phone
- 0141 352 4444
- [email protected]
- Website
- Scottish Citylink Coaches Ltd
Bus from Canal Street to Buchanan Bus Station
- Ave. Duration
- 1h 34m
- Frequency
- 3 times a day
- Estimated price
- £11–22
- Website
- Scottish Citylink Coaches Ltd
- Single
- £11–22
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Buchanan Bus Station to Millennium Point
- Ave. Duration
- 6h 5m
- Frequency
- 5 times a day
- Estimated price
- £35–55
- Website
- Flixbus
Bus from Birmingham - Jennens Road to Swansea City Bus Station
- Ave. Duration
- 4h 10m
- Frequency
- Once daily
- Estimated price
- £17–26
- Website
- Flixbus
- Phone
- +44 (0)131 510 4007
- [email protected]
- Website
- Ember
Bus from Perth station to Edinburgh Airport
- Ave. Duration
- 1h
- Frequency
- Hourly
- Estimated price
- £7–10
- Website
- Ember
Bus from Perth station to George Street
- Ave. Duration
- 1h 39m
- Frequency
- Hourly
- Estimated price
- £7–11
- Website
- Ember
Bus from Perth station to Edinburgh Airport
- Ave. Duration
- 1h
- Frequency
- Hourly
- Estimated price
- £7–10
- Website
- Ember
Bus from Perth station to Edinburgh Airport
- Ave. Duration
- 1h
- Frequency
- Hourly
- Estimated price
- £7–10
- Website
- Ember
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
Booking & Getting There
Perth to Swansea bus services, operated by Park's of Hamilton, arrive at Buchanan Bus Station.
Perth to Swansea train services, operated by ScotRail, arrive at Glasgow Queen Street station.
Yes, the driving distance between Perth to Swansea is 415 miles. It takes approximately 7h 47m to drive from Perth to Swansea.
Book your Perth to Swansea train tickets online with Omio.
Book your Perth to Swansea bus tickets online with Omio.
There are 1317+ hotels available in Swansea.














































