There are 10 ways to get from Perth to Swansea 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 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
5h 58m£76–193Bus
cheapest- Take the bus from Canal Street to Buchanan Bus Stationbus M9 / ...
- Take the bus from Glasgow to Birmingham - Jennens Roadbus
- Take the bus from Birmingham - Jennens Road to Swansea City Bus Stationbus
14h 4m£55–96Train via Glasgow
- Take the train from Perth to Glasgow Queen Streettrain
- Take the train from Glasgow Central to Crewetrain
- Take the train from Crewe to Swanseatrain
9h 59m£181–317Drive 413 mi
- Drive from Perth to Swanseacar 413 mi
7h 47m£102–147Train 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 44m£95–225Bus 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 5m£112–237Bus 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£138–330Train 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 50m£130–269Train
- Take the train from Perth to Crewetrain Inverness - London Euston
- Take the train from Crewe to Swanseatrain Manchester Piccadilly - Haverfordwest / ...
10h 12m£168–286Bus, 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
10h 47m£263–396
Perth to Swansea by train and foot
Questions & Answers
The cheapest way to get from Perth to Swansea is to bus which costs £55 - £100 and takes 14h 4m.
The fastest way to get from Perth to Swansea is to bus and fly and train which takes 5h 58m and costs £75 - £200.
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 Glasgow 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 9h 59m.
The distance between Perth and Swansea is 451 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 9h 59m and costs £180 - £320.
It takes approximately 5h 58m 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 9h 59m and costs £180 - £320. Alternatively, you can bus, which costs £55 - £100 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 9h 59m. Alternatively, you can take a bus from Canal Street to Swansea City Bus Station via Buchanan Bus Station, Glasgow, and Birmingham - Jennens Road in around 14h 4m.
- Website
- easyjet.com
Flights from Edinburgh Airport to Bristol Airport
- Ave. Duration
- 1h 16m
- When
- Every day
- Estimated price
- £30–110
Flights from Edinburgh Airport to Bristol Airport via Belfast (Aldergrove)
- Ave. Duration
- 3h 6m
- When
- Sunday, Monday, Tuesday, Wednesday, Thursday, and Saturday
- Estimated price
- £30–110
Flights from Glasgow Airport to Bristol Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- £27–95
Flights from Glasgow Airport to Bristol Airport via Belfast (Aldergrove)
- Ave. Duration
- 2h 57m
- When
- Monday, Friday, and Sunday
- Estimated price
- £27–95
Flights from Edinburgh Airport to Birmingham Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- £27–85
Flights from Edinburgh Airport to Birmingham Airport via Belfast (Aldergrove)
- Ave. Duration
- 3h
- When
- Friday
- Estimated price
- £27–85
Flights from Edinburgh Airport to Luton Airport
- Ave. Duration
- 1h 16m
- When
- Every day
- Estimated price
- £22–120
Flights from Edinburgh Airport to Luton Airport via Belfast (Aldergrove)
- Ave. Duration
- 3h 16m
- When
- Thursday and Wednesday
- Estimated price
- £22–120
Flights from Glasgow Airport to Birmingham Airport
- Ave. Duration
- 1h 6m
- When
- Every day
- Estimated price
- £24–75
Flights from Glasgow Airport to Birmingham Airport via Belfast (Aldergrove)
- Ave. Duration
- 2h 53m
- When
- Monday, Sunday, and Friday
- Estimated price
- £24–75
- Phone
- +44 (0)345 7000 125
- [email protected]
- Website
- Great Western Railway (GWR)
Train from Bristol Parkway to Swansea
- Ave. Duration
- 1h 27m
- Frequency
- Hourly
- Estimated price
- £35–65
- Website
- Great Western Railway (GWR)
Train from Bristol Parkway to Swansea
- Ave. Duration
- 1h 27m
- Frequency
- Hourly
- Estimated price
- £35–65
- Website
- Great Western Railway (GWR)
Train from Bristol Parkway to Swansea
- Ave. Duration
- 1h 27m
- Frequency
- Hourly
- Estimated price
- £35–65
- Website
- Great Western Railway (GWR)
Train from London Paddington to Swansea
- Ave. Duration
- 2h 51m
- Frequency
- Hourly
- Estimated price
- £85–160
- Website
- Great Western Railway (GWR)
Train from Bristol Parkway to Swansea
- Ave. Duration
- 1h 27m
- Frequency
- Hourly
- Estimated price
- £35–65
- Website
- Great Western Railway (GWR)
Train from Bristol Parkway to Swansea
- Ave. Duration
- 1h 27m
- Frequency
- Hourly
- Estimated price
- £35–65
- Website
- Great Western Railway (GWR)
- Phone
- +44 (0)131 510 4007
- [email protected]
- Website
- Ember
Bus from Perth station to Edinburgh Airport
- Ave. Duration
- 55 min
- Frequency
- Hourly
- Estimated price
- £7–11
- Website
- Ember
Bus from Perth station to Edinburgh Airport
- Ave. Duration
- 55 min
- Frequency
- Hourly
- Estimated price
- £7–11
- Website
- Ember
Bus from Perth station to Edinburgh Airport
- Ave. Duration
- 55 min
- Frequency
- Hourly
- Estimated price
- £7–11
- Website
- Ember
Bus from Perth station to George Street
- Ave. Duration
- 1h 28m
- Frequency
- Hourly
- Estimated price
- £7–11
- 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
More Questions & Answers
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 1315+ hotels available in Swansea.






