The average train between Madrid and Naples takes 34h 52m and the fastest train takes 30h 59m. The train service runs several times per day from Madrid to Naples. 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 twice daily between Madrid and Naples. The earliest departure is at 12:50 PM in the afternoon, and the last departure from Madrid is at 8:30 PM which arrives into Naples at 12:03 PM. All services require a transfer at Barcelona-Sants and take an average of 34h 52m. The schedules shown below are for the next available departures.
Arrives next day




30h 59m • 4 changes
Arrives +2 days




39h 33m • 4 changes
Arrives next day




30h 59m • 4 changes
Arrives +2 days




39h 33m • 4 changes
Arrives next day




30h 59m • 4 changes
Arrives +2 days




39h 33m • 4 changes
Arrives next day




30h 59m • 4 changes
Arrives +2 days




39h 33m • 4 changes
Want to know about travelling from Madrid to Naples? 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 Madrid to Naples. However, there are services departing from Madrid station and arriving at Naples station via Barcelona-Sants. The journey, including transfers, takes approximately 34h 52m.
Madrid to Naples train services, operated by Renfe Viajeros, depart from Madrid-Puerta de Atocha-Almudena Grandes station.
Madrid to Naples train services, operated by Renfe Viajeros, arrive at Napoli Centrale station.
Book your Madrid to Naples train tickets online with Renfe Viajeros, TGV inOui and 6 other operators.
The distance between Madrid and Naples is 1,514.5 km. The road distance is 2,452 km.
You can take a train from Madrid-Puerta de Atocha-Almudena Grandes to Napoli Centrale via Barcelona-Sants, Valence Tgv Rhone-Alpes Sud, Chambery Challes Les Eaux, and Torino Porta Susa in around 21h 20m.