The average train between Florence and Heidelberg takes 12h 18m and the fastest train takes 9h 58m. The train service runs several times per day from Florence to Heidelberg. 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 Florence and Heidelberg. The earliest departure is at 7:25 AM in the morning, and the last departure from Florence is at 8:25 PM which arrives into Heidelberg at 2:44 PM. All services require a transfer at Milano Centrale and take an average of 12h 18m. The schedules shown below are for the next available departures.



10h 20m • 3 changes


9h 58m • 3 changes


10h 27m • 3 changesArrives next day



11h • 3 changes


10h 20m • 3 changes


9h 58m • 3 changes


10h 27m • 3 changesArrives next day



11h 5m • 3 changes


10h 20m • 3 changes


9h 58m • 3 changes


10h 27m • 3 changesArrives next day



15h 58m • 3 changesWant to know about travelling from Florence to Heidelberg? 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 Florence to Heidelberg. However, there are services departing from Florence station and arriving at Heidelberg station via Milano Centrale. The journey, including transfers, takes approximately 12h 18m.
Florence to Heidelberg train services, operated by ItaloTreno, depart from Firenze Santa Maria Novella station.
Florence to Heidelberg train services, operated by ItaloTreno, arrive at Mannheim, Hauptbahnhof station.
Book your Florence to Heidelberg train tickets online with ItaloTreno, Trenitalia EuroCity and 2 other operators.
The distance between Florence and Heidelberg is 655.5 km. The road distance is 937 km.
You can take a train from Firenze Santa Maria Novella to Heidelberg, Hauptbahnhof via Milano Centrale, Basel SBB, and Mannheim, Hauptbahnhof in around 10h 10m.