Timetable
Train route
Cheap train tickets

Cardiff Bay to Swansea Train prices and times

Planning a journey from Cardiff Bay to Swansea? Trip.com offers train tickets starting from as low as US$4.12, with average prices for this route around US$19.75. To ensure you get the most affordable fares, we suggest exploring alternatives like split tickets.

View More Trains
DepartureArrivalOperator
Find Tickets
14:08
1h 22m, Changes required
Cardiff Bay
15:30
Swansea
Transport for WalesGreat Western Railway
Find Tickets
14:26
1h 14m, Changes required
Cardiff Bay
15:40
Swansea
Transport for Wales
Find Tickets
15:08
1h 19m, Changes required
Cardiff Bay
16:27
Swansea
Transport for WalesGreat Western Railway
Find Tickets
15:38
1h 27m, Changes required
Cardiff Bay
17:05
Swansea
Transport for Wales
Find Tickets
16:08
1h 22m, Changes required
Cardiff Bay
17:30
Swansea
Transport for WalesGreat Western Railway
Find Tickets
16:26
1h 16m, Changes required
Cardiff Bay
17:42
Paris
Transport for Wales
Find Tickets

Cardiff Bay to Swansea Train Route Details

First train
First train
07:08
Last train
Last train
23:54
Departure station
Departure station
Arrival station
Arrival station
Journey time
Journey time
1h 13m
Distance
Distance
57 km
Price
Price
US$4.12*

Why Book Train Tickets With Trip.com?

  • Split Tickets

    Best price promise

    If you find trains for a cheaper price elsewhere, let us know and we'll refund the difference*
  • Split Tickets

    Split Tickets

    Save an average of 30% on train fares by splitting your Cardiff Bay to Swansea journey
  • Split Tickets

    National Rail Partners

    Official train ticket sellers with 5-star customer support
  • Split Tickets

    No Booking Fees on the App

    Only pay for your train travel – no hidden fees

Recommendations

  • Trains from Cardiff Bay

  • Trains to Swansea

  • Popular routes

  • Top Destinations

  • Popular stations

*After comparing the full year of 2023 for SplitTickets and full-price tickets on Trip.com, the average savings rate for SplitTickets is 30%.