The average train between Edinburgh and Swansea takes 7h 21m and the fastest train takes 6h 45m. The train service runs several times per day from Edinburgh to Swansea. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run every 4 hours between Edinburgh and Swansea. The earliest departure is at 1:24 AM at night, and the last departure from Edinburgh is at 6:52 PM which arrives into Swansea at 2:18 PM. All services require a transfer, and take on average 7h 21m. The schedules shown below are for the next available departures.

8h 16m • 1 change
6h 47m • 1 change
6h 45m • 1 change
6h 48m • 1 change
8h 16m • 1 change
6h 47m • 1 change
6h 45m • 1 change
6h 48m • 1 change
8h 16m • 1 change
6h 47m • 1 change
6h 45m • 1 change
6h 48m • 1 change
8h 16m • 1 change
6h 47m • 1 change
6h 45m • 1 change
6h 48m • 1 change
8h 14m • 1 change
6h 47m • 1 change
6h 47m • 1 change
6h 45m • 1 changeWant to know about travelling from Edinburgh to Swansea? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct train from Edinburgh to Swansea. However, there are services departing from Edinburgh Waverley station and arriving at Swansea station via Crewe station. The journey, including transfers, takes approximately 7h 21m.
Edinburgh to Swansea train services, operated by Avanti West Coast, depart from Edinburgh Waverley station.
Edinburgh to Swansea train services, operated by Transport for Wales, arrive at Swansea station.
Book your Edinburgh to Swansea train tickets online with Omio.
The distance between Edinburgh and Swansea is 484.1 km. The road distance is 597 km.
You can take a train from Edinburgh Waverley to Swansea via Crewe in around 7h 39m.