It takes an average of 3h 11m to travel from London to Swansea by train, over a distance of around 164 miles (264 km). There are normally 27 trains per day travelling from London to Swansea and tickets for this journey start from £30.20 when you book in advance.
From 2h 41m
164 miles (264 km)
27 trains per day
Direct trains available
The train from London to Swansea gets you into the heart of Wales' second city in just three hours. If you're stuck for something to do along the way, why not brush up on a few everyday Welsh phrases? With departures from around dawn, you'll arrive in time to say bore da (good morning).
It's a glorious trip through the Welsh countryside, and there's loads to distract you onboard too when you travel with Great Western Railway. Thanks to the free WiFi and power sockets near seats, you’ll be able to browse the internet while you travel without worrying about your phone running out of juice. Are you the kind of person who likes to stretch out? Upgrade to First Class for a roomier seat, plus a stream of snacks and drinks so you'll be fresh and raring to go when you step off the train, ready to take on the city's beaches, restaurants and Mumbles Pier.
Use our Journey Planner to start searching for tickets and find your train from London to Swansea today.
The average journey time by train between London and Swansea is 3 hours and 11 minutes, with around 27 trains per day. The journey time may be longer on weekends and holidays, so use our Journey Planner on this page to search for a specific travel date.
The fastest journey time by train from London to Swansea is 2 hours and 41 minutes.
Train ticket prices from London to Swansea can start from as little as £30.20 when you book in advance. The cost of tickets can vary depending on the time of day, route and class you book and are usually more expensive if you book on the day.
Yes, it is possible to travel from London to Swansea without having to change trains. There are 27 direct trains from London to Swansea each day. Though there may be fewer direct services available depending on your exact departure date.
The first train from London to Swansea leaves at 04:23. Times and services may vary during weekends and holidays.
The last train from London to Swansea leaves at 22:48. Trains that depart in the early morning hours or very late evening may be sleeper services, time and services may also vary during weekends and holidays.
Trains travelling from London to Swansea cover a distance of around 164 miles (264 km) during the journey.
Look out for Advance tickets – they usually come out up to 12 weeks before the departure date and can be cheaper than buying on the day. If you’re here a tad early, sign up for our Advance ticket alert today to get notified when your tickets are released.
If you catch this train more than 3 times per week, you could save money with a Season Ticket. With annual, monthly and weekly options available, find out if a season ticket for London to Swansea is right for you.
National Railcards offer a 1/3 off eligible train tickets in the UK and can be a great investment if you travel a few times or more in a year. Find out how you can save with a National Railcard here.
Download our app to find split tickets — courtesy of SplitSave, our handy feature which 'splits' your train tickets where possible to find you a better deal. Learn more about the clever tech behind split tickets, and how to spot SplitSave discounts in our app.
For more money-saving tips on UK and European train travel, read our cheap train tickets guide.