Fastest journey1hr 34m
Travelling from Bristol to Swansea by train
The fastest trains from Bristol to Swansea take around 1 hour and 34 minutes, covering a distance of approximately 97 kilometres. There are frequent services on the rail route between Bristol and Swansea.
Direct trains run between Bristol and Swansea.
We usually find around 43 direct trains on the route from Bristol to Swansea every weekday.
There are typically fewer departures at weekends, when we found around 41 departures. The duration is normally about 1 hour and 34 minutes, whatever time you make the journey.
On weekdays the earliest direct train to Swansea is usually scheduled to depart Bristol around 08:08 and the last train is around 00:28. At weekends the first train of the day leaves Bristol around 09:08, and the last at 00:17.
When to book Bristol to Swansea train tickets?
The earlier you book the better, and the cheapest tickets we've found for trains from Bristol to Swansea are £14.50.
Trains departing 30 days in advance will cost around £14 while booking 7 days in advance the price is around £17. Booking on the day of travel is likely to be more expensive, so it is worth booking in advance if you can to save money.
Trains in the UK usually open for booking around 3 months in advance. If booking is not yet open for your dates then you can set a booking alert to receive an email on the day that the cheapest tickets are released for your journey from Bristol to Swansea by train.
Which trains operate between Bristol and Swansea?
More than one type of train operates on the route from Bristol to Swansea, so you’ll be travelling with one or more of the following rail operators:
- First Great Western
- Great Western Railway
You can check which train you’ll be travelling on by looking for the train name in search results.
Other journeys to Swansea View all journeys to Swansea
- From Crewe from £30.50
- From Blackpool North from £49.00
- From Didcot Parkway from £25.50
- From Stafford from £42.20
- Reading to Bournemouth trains
- London to Brussels trains
- Paris to Milan trains
- Florence to Verona trains
- Glasgow to Coventry trains
- Brussels to Amsterdam trains
- Bordeaux to Marseille trains
- Amsterdam to London trains
- Milan to Florence trains
- Darlington to Birmingham trains
- Milan to Pisa trains
- London to Geneva trains
- London to Munich trains
- Barcelona to Bilbao-Abando trains
- London to Florence trains
- Leeds to Stevenage trains
- Lyon to Barcelona trains
- Milan to Trieste Centrale trains
- London to Bruges trains
- London to Nice trains
- Brussels to London trains
- Madrid to Barcelona trains
- Madrid to Seville trains
- Brussels to Cologne trains
- Bilbao-Abando to Madrid trains
- Zurich to Milan trains
- Munich to Venice trains
- Madrid to Bilbao-Abando trains
- Riomaggiore to Rome trains
- Venice to Verona trains
- London to Amsterdam trains
- Verona to Milan trains
- London to Stuttgart trains
- Milan to Bergamo trains
- Paris to Prague trains
- Milan to Rome trains
- London to Antwerp trains
- Reading to Bath Spa trains
- Paris to Toulouse trains
- London to Salzburg trains
- Middlesbrough to Edinburgh (Waverley, city centre) trains
- Plymouth to Birmingham trains
- Naples to Palermo Centrale trains
- Brussels to Rotterdam trains
- Paris to Zurich trains
- London to Rotterdam trains
- Geneva to Milan trains
- Ipswich to Norwich trains
- Pisa to Bologna trains
- Brussels to Vienna trains
- Munich to Salzburg trains
- Grantham to York trains
- London to Copenhagen trains
- London to Bordeaux trains
- Berlin to Warsaw trains
- Birmingham to High Wycombe trains
- Paris to Amsterdam trains
- Milan to Bari S. Spirito trains
- Brussels to Berlin trains
- London to Verona trains