The average train between San Juan del Puerto and Madrid takes 4h 49m and the fastest train takes 4h 30m. The train service runs several times per day from San Juan del Puerto to Madrid. 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 4 times a day between San Juan del Puerto and Madrid. The earliest departure is at 6:42 AM in the morning, and the last departure from San Juan del Puerto is at 7:10 PM which arrives into Madrid at 11:43 PM. All services require a transfer, and take on average 4h 49m. The schedules shown below are for the next available departures.

4h 30m • 1 change

5h 5m • 1 change

5h 2m • 1 change

4h 33m • 1 change

4h 30m • 1 change

5h 5m • 1 change

5h 2m • 1 change

4h 33m • 1 change

4h 30m • 1 change

5h 5m • 1 change

5h 2m • 1 change

4h 33m • 1 change

4h 30m • 1 change

5h 5m • 1 change

5h 2m • 1 change

4h 33m • 1 change
Want to know about travelling from San Juan del Puerto to Madrid? 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 San Juan del Puerto to Madrid. However, there are services departing from San Juan del Puerto station and arriving at Madrid station via Sevilla-Santa Justa. The journey, including transfers, takes approximately 4h 49m.
San Juan del Puerto to Madrid train services, operated by Renfe Viajeros, depart from San Juan Del Puerto station.
San Juan del Puerto to Madrid train services, operated by Renfe Viajeros, arrive at Madrid-Puerta de Atocha-Almudena Grandes station.
The distance between San Juan del Puerto and Madrid is 439 km. The road distance is 575 km.
You can take a train from San Juan Del Puerto to Madrid-Puerta de Atocha-Almudena Grandes via Sevilla-Santa Justa in around 4h 14m.