The cheapest and fastest trains from Madrid to Valls
Cheapest price
£31
Average price
£33
Fastest journey
2 h 16 m
Average duration
2 h 16 m
Trains per day
2
Distance
428 km
The best way to find a cheap train ticket from Madrid to Valls is to book your journey as far in advance as possible and to avoid travelling at rush hour.
The average ticket from Madrid to Valls will cost around £33 if you buy it on the day, but you can find cheap train tickets today for only £31.
Of the 2 trains that leave Madrid for Valls every day 2 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
These direct trains cover the 428 km distance in an average of 2 h 16 m but if you time it right, some trains will get you there in just 2 h 16 m .
The slowest trains will take 2 h 16 m and usually involve a change or two along the way, but you might be able to save a few pennies if you’re on a budget.




Travel Information
Compare coach, train and flight for Madrid to Valls
Omio recommends booking the train as it is the most popular option from Madrid to Valls among Omio's users. If you are prioritising price take the coach with prices starting from £45. For those with little time consider booking a flight which can get you there in 1h 20m. The ticket price range depends on the travel mode: a coach costs an average of £45, and a flight costs an average of £50.
Distance: 428 km
Compare train with
Most popular Train | Flight | Coach |
|---|---|---|
£64 Average Price | £88 Average Price | £45 Average Price Cheapest |
2h 46m Average total duration 2h 16m Onboard + 30m Additional time* | 4h 20m Average total duration Fastest 1h 20m Onboard + 3h 0m Additional time* | 7h 17m Average total duration 6h 47m Onboard + 30m Additional time* |
Direct Options | Direct Options | Direct Options |
Compare prices and tickets Madrid to Valls by coach, train or flight
Compare coach, train and flight prices over the next three weeks. See the best deals at a glance, find the lowest fares, and choose the option that fits your budget.
17 Nov
18 Nov
19 Nov
20 Nov
21 Nov
22 Nov
23 Nov
Journey information
Overview: Train from Madrid to Valls
Trains from Madrid to Valls run on average 2 times per day, taking around 2h 16m. Cheap train tickets for this journey start at £31 if you book in advance.
There are 2 trains per day. The earliest train runs at 09:22, the last at 21:13. The fastest train covers the 428 km distance in 2h 15m.
Distance 428 km |
Average train duration 2h 16m |
Cheapest ticket price £31 |
Trains per day 2 |
Direct trains 2 |
Fastest train 2h 15m |
First train 09:22 |
Last train 21:13 |
Train companies: Ouigo, iryo from Madrid to Valls trainsOuigo, iryo trains will get you between Madrid and Valls from £31. With over 1000 travel companies on Omio, you can find the best train times and tickets for your trip.
iryo
Ouigo
FAQs: Madrid to Valls train
Find answers to the most common questions about traveling from Madrid to Valls by train. From journey times and ticket prices to direct connections, first and last departures, and even whether the route is scenic, our FAQs cover everything you need to plan your trip. Whether you’re looking for the fastest train, the cheapest option, or tips for making the most of your visit at Valls, this guide helps you travel smarter and with confidence.

popular train stations
Important Stations and Airports in Madrid and Valls
- Mon - Sun: 10:00 - 20:00
- Free WiFi in the station and on all Renfe trains.
- Open daily from 05:30 to 22:00.
- Passion Food
- La Barrila
- Enrique Tomás
- Pic Nic
- Foodissimo!
- PureGusto
- Burger King
- Wheelchair parking, adapted elevators, adapted platforms, lobby shopping area.
- 60 Balconies Urban Stay
- Only YOU Hotel Atocha
- SLEEP’N Atocha
- Mon - Sun: 10:00 - 20:00
- On the ground floor of the main concourse.
- Metro lines: 1
- Bus lines: 10, 14, 24, 26, 32, 37, 54, 57, 59, 85, 86, 102, 121, 203
- Train lines: C1, C2, C3, C4, C5, C7, C8, C10
More options for your journey from Madrid to Valls
Here are some other resources that might have the information you need
