There are 11 ways to get from Perugia to Heidelberg by train (Trenitalia), bus, car, train, plane, or night train
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train via Basel
best- Take the train from Perugia to Rho-Fiera Milanotrain Fr
- Take the train from Rho-Fiera Milano to Basel Sbbtrain Ec
- Take the train from Basel SBB to Mannheim, Hauptbahnhoftrain 12 / ...
12h 12m€182–361Bus, night train
cheapest- Take the bus from Perugia Train Station Bus Stop to Milan Lampugnanobus
- Take the bus from Milano, Autostazione Lampugnano to Zürichbus
- Take the nighttrain from Zuerich Hb to Heidelberg Hbfnighttrain Nj
16h 31m€70–172Bus
- Take the bus from Perugia to Florencebus
- Take the bus from Florence Villa Constanza Bus Station to Karlsruhe Central Bus Stationbus
- Take the bus from Karlsruhe central train station to Heidelberg Pre Waypointbus 198 / ...
15h 42m€128–188Drive 1,028 km
- Drive from Perugia to Heidelbergcar 1,028 km
9h 52m€167–241Train to Florence Peretola Airport, fly to Frankfurt, train
- Take the train from Perugia to Firenze S.M.N.train
- Fly from Florence Peretola Airport (FLR) to Frankfurt (FRA)plane FLR - FRA
- Take the train from Frankfurt to Mannheim, Hauptbahnhoftrain
7h 30m€148–379Train
- Take the train from Perugia to Milano Centraletrain Ic
- Take the train from Milano Centrale to Karlsruhe Hbftrain Ec
- Take the train from Karlsruhe Hauptbahnhof to Heidelberg, Hauptbahnhoftrain S3 / ...
13h 43m€139–274Bus to Fiumicino International Airport, fly to Frankfurt, train
- Take the bus from Perugia to Fiumicino Aeroporto T3bus
- Fly from Fiumicino International Airport (FCO) to Frankfurt (FRA)plane FCO - FRA
- Take the train from Frankfurt to Mannheim, Hauptbahnhoftrain
7h 29m€73–198Train to Bologna Guglielmo Marconi Airport, fly to Frankfurt, train
- Take the train from Perugia to Bologna Centraletrain
- Fly from Bologna Guglielmo Marconi Airport (BLQ) to Frankfurt (FRA)plane BLQ - FRA
- Take the train from Frankfurt to Mannheim, Hauptbahnhoftrain
8h 2m€131–358Bus to Fiumicino International Airport, fly to Stuttgart Airport, train
- Take the bus from Perugia to Fiumicino Aeroporto T3bus
- Fly from Fiumicino International Airport (FCO) to Stuttgart Airport (STR)plane FCO - STR
- Take the train from Hauptbahnhof to Heidelberg, Hauptbahnhoftrain
8h 15m€104–236Train to Florence Peretola Airport, fly to Munich International Airport, train
- Take the train from Perugia to Firenze S.M.N.train
- Fly from Florence Peretola Airport (FLR) to Munich International Airport (MUC)plane FLR - MUC
- Take the train from München Hbf to Mannheim, Hauptbahnhoftrain
10h 15m€173–490Train to Florence Peretola Airport, fly to Zurich Airport, train
- Take the train from Perugia to Firenze S.M.N.train
- Fly from Florence Peretola Airport (FLR) to Zurich Airport (ZRH)plane FLR - ZRH
- Take the train from Zürich HB to Basel SBBtrain
- Take the train from Basel SBB to Mannheim, Hauptbahnhoftrain
10h 24m€189–525
Perugia to Heidelberg by train
Comparing Your Travel Options
The cheapest way to get from Perugia to Heidelberg is to bus and fly and train which costs €70 - €200 and takes 7h 29m.
The fastest way to get from Perugia to Heidelberg is to bus and fly and train which takes 7h 29m and costs €70 - €200.
No, there is no direct bus from Perugia to Heidelberg. However, there are services departing from Perugia and arriving at Heidelberg Pre Waypoint via Florence Villa Constanza Bus Station and Karlsruhe central train station. The journey, including transfers, takes approximately 15h 42m.
No, there is no direct train from Perugia to Heidelberg. However, there are services departing from Perugia and arriving at Heidelberg, Hauptbahnhof via Rho-Fiera Milano, Basel SBB and Mannheim, Hauptbahnhof. The journey, including transfers, takes approximately 12h 12m.
The distance between Perugia and Heidelberg is 1082 km. The road distance is 1028 km.
The best way to get from Perugia to Heidelberg without a car is to train via Basel which takes 12h 12m and costs €180 - €370.
It takes approximately 12h 12m to get from Perugia to Heidelberg, including transfers.
Perugia to Heidelberg bus services, operated by FlixBus, depart from Perugia station.
Perugia to Heidelberg train services, operated by Trenitalia Frecce, depart from Perugia station.
The best way to get from Perugia to Heidelberg is to train via Basel which takes 12h 12m and costs €180 - €370. Alternatively, you can bus, which costs €120 - €190 and takes 15h 42m.
What companies run services between Perugia, Italy and Heidelberg, Germany?
You can take a train from Perugia to Heidelberg, Hauptbahnhof via Rho-Fiera Milano, Basel SBB, and Mannheim, Hauptbahnhof in around 12h 12m. Alternatively, you can take a bus from Perugia to Heidelberg Pre Waypoint via Florence Villa Constanza Bus Station and Karlsruhe central train station in around 15h 42m.
- Website
- lufthansa.com
Flights from Florence Peretola Airport to Frankfurt
- Ave. Duration
- 1h 36m
- When
- Every day
- Estimated price
- €110–470
Flights from Florence Peretola Airport to Frankfurt via Munich International Airport
- Ave. Duration
- 3h 40m
- When
- Every day
- Estimated price
- €150–490
Flights from Fiumicino International Airport to Frankfurt
- Ave. Duration
- 1h 58m
- When
- Every day
- Estimated price
- €70–130
Flights from Fiumicino International Airport to Frankfurt via Munich International Airport
- Ave. Duration
- 3h 37m
- When
- Every day
- Estimated price
- €70–130
Flights from Fiumicino International Airport to Frankfurt via Milan Linate
- Ave. Duration
- 3h 25m
- When
- Every day
- Estimated price
- €75–130
Flights from Fiumicino International Airport to Frankfurt via Florence Peretola Airport
- Ave. Duration
- 3h 25m
- When
- Thursday and Friday
- Estimated price
- €120–400
Flights from Bologna Guglielmo Marconi Airport to Frankfurt
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- €130–420
Flights from Bologna Guglielmo Marconi Airport to Frankfurt via Munich International Airport
- Ave. Duration
- 3h 38m
- When
- Monday to Saturday
- Estimated price
- €130–430
Flights from Fiumicino International Airport to Stuttgart Airport via Munich International Airport
- Ave. Duration
- 3h 45m
- When
- Friday, Sunday, Monday, Tuesday, Wednesday, and Saturday
- Estimated price
- €70–320
Flights from Florence Peretola Airport to Munich International Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €170–550
Flights from Florence Peretola Airport to Munich International Airport via Frankfurt
- Ave. Duration
- 3h 30m
- When
- Monday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €90–300
Flights from Florence Peretola Airport to Zurich Airport via Munich International Airport
- Ave. Duration
- 3h 15m
- When
- Every day
- Estimated price
- €160–550
Flights from Florence Peretola Airport to Zurich Airport via Frankfurt
- Ave. Duration
- 3h 25m
- When
- Every day
- Estimated price
- €170–600
- Website
- ita-airways.com
Flights from Florence Peretola Airport to Frankfurt
- Ave. Duration
- 1h 36m
- When
- Every day
- Estimated price
- €110–470
Flights from Florence Peretola Airport to Frankfurt via Munich International Airport
- Ave. Duration
- 3h 50m
- When
- Monday, Wednesday, Thursday, and Friday
- Estimated price
- €150–490
Flights from Fiumicino International Airport to Frankfurt
- Ave. Duration
- 1h 58m
- When
- Every day
- Estimated price
- €70–130
Flights from Fiumicino International Airport to Frankfurt via Munich International Airport
- Ave. Duration
- 3h 20m
- When
- Every day
- Estimated price
- €75–130
Flights from Fiumicino International Airport to Frankfurt via Milan Linate
- Ave. Duration
- 3h 27m
- When
- Every day
- Estimated price
- €75–400
Flights from Fiumicino International Airport to Frankfurt via Florence Peretola Airport
- Ave. Duration
- 3h 25m
- When
- Thursday and Friday
- Estimated price
- €120–400
Flights from Bologna Guglielmo Marconi Airport to Frankfurt
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- €130–420
Flights from Bologna Guglielmo Marconi Airport to Frankfurt via Munich International Airport
- Ave. Duration
- 3h 35m
- When
- Monday, Wednesday, Thursday, and Friday
- Estimated price
- €130–430
Flights from Fiumicino International Airport to Stuttgart Airport
- Ave. Duration
- 1h 37m
- When
- Every day
- Estimated price
- €70–150
Flights from Fiumicino International Airport to Stuttgart Airport via Milan Linate
- Ave. Duration
- 3h 30m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €70–240
Flights from Florence Peretola Airport to Munich International Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €170–550
Flights from Florence Peretola Airport to Zurich Airport
- Ave. Duration
- 1h 16m
- When
- Every day
- Estimated price
- €85–360
- Website
- airdolomiti.it
Flights from Florence Peretola Airport to Frankfurt
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- €150–470
Flights from Bologna Guglielmo Marconi Airport to Frankfurt
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- €130–420
Flights from Florence Peretola Airport to Munich International Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €170–550
Flights from Florence Peretola Airport to Zurich Airport via Munich International Airport
- Ave. Duration
- 3h 20m
- When
- Saturday
- Estimated price
- €160–550
Flights from Florence Peretola Airport to Zurich Airport via Frankfurt
- Ave. Duration
- 3h 25m
- When
- Every day
- Estimated price
- €170–600
- Website
- swiss.com
Flights from Bologna Guglielmo Marconi Airport to Frankfurt via Zurich Airport
- Ave. Duration
- 3h 25m
- When
- Monday, Tuesday, Wednesday, Friday, and Sunday
- Estimated price
- €70–280
Flights from Fiumicino International Airport to Stuttgart Airport via Zurich Airport
- Ave. Duration
- 3h 40m
- When
- Every day
- Estimated price
- €75–310
Flights from Florence Peretola Airport to Munich International Airport via Zurich Airport
- Ave. Duration
- 3h 15m
- When
- Every day
- Estimated price
- €90–370
Flights from Florence Peretola Airport to Zurich Airport
- Ave. Duration
- 1h 16m
- When
- Every day
- Estimated price
- €85–360
- Website
- eurowings.com
Flights from Fiumicino International Airport to Stuttgart Airport
- Ave. Duration
- 1h 37m
- When
- Every day
- Estimated price
- €70–150
- Website
- condor.com
Flights from Florence Peretola Airport to Frankfurt
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- €130–320
Flights from Fiumicino International Airport to Frankfurt
- Ave. Duration
- 1h 45m
- When
- Friday
- Estimated price
- €70–160
- Website
- easyjet.com
Flights from Fiumicino International Airport to Frankfurt
- Ave. Duration
- 2h
- When
- Every day
- Estimated price
- €45–120
- Website
- austrian.com
Flights from Florence Peretola Airport to Munich International Airport via Vienna
- Ave. Duration
- 3h 25m
- When
- Every day
- Estimated price
- €90–390
- Phone
- +39 06 5210550
- Website
- Trenitalia Frecce
Train from Perugia to Rho-Fiera Milano
- Ave. Duration
- 4h 1m
- Frequency
- 6 times a week
- Estimated price
- €60–110
- Website
- Trenitalia Frecce
Train from Perugia to Firenze S.M.N.
- Ave. Duration
- 1h 37m
- Frequency
- 6 times a week
- Estimated price
- €20–35
- Website
- Trenitalia Frecce
Train from Perugia to Bologna Centrale
- Ave. Duration
- 2h 24m
- Frequency
- 6 times a week
- Estimated price
- €30–60
- Website
- Trenitalia Frecce
Train from Perugia to Firenze S.M.N.
- Ave. Duration
- 1h 37m
- Frequency
- 6 times a week
- Estimated price
- €20–35
- Website
- Trenitalia Frecce
Train from Perugia to Firenze S.M.N.
- Ave. Duration
- 1h 37m
- Frequency
- 6 times a week
- Estimated price
- €20–35
- Website
- Trenitalia Frecce
- Phone
- +39 06 68475475
- [email protected]
- Website
- Trenitalia Eurocity
Train from Rho-Fiera Milano to Basel Sbb
- Ave. Duration
- 4h 15m
- Frequency
- 3 times a week
- Estimated price
- €75–130
- Website
- Trenitalia Eurocity
- 1st Class
- €90–130
- 2nd Class
- €75–110
Train from Basel SBB to Mannheim, Hauptbahnhof
- Ave. Duration
- 2h 10m
- Frequency
- Once daily
- Estimated price
- €55–110
- Website
- Trenitalia Eurocity
- 1st Class
- €75–110
- 2nd Class
- €55–80
Train from Milano Centrale to Karlsruhe Hbf
- Ave. Duration
- 6h 17m
- Frequency
- Once daily
- Estimated price
- €80–140
- Website
- Trenitalia Eurocity
- 1st Class
- €80–120
- 2nd Class
- €100–140
Train from Basel SBB to Mannheim, Hauptbahnhof
- Ave. Duration
- 2h 10m
- Frequency
- Once daily
- Estimated price
- €55–110
- Website
- Trenitalia Eurocity
- 1st Class
- €75–110
- 2nd Class
- €55–80
- Phone
- +49 30 2970
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Basel SBB to Mannheim, Hauptbahnhof
- Ave. Duration
- 2h 6m
- Frequency
- Hourly
- Estimated price
- €40–100
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Frankfurt to Mannheim, Hauptbahnhof
- Ave. Duration
- 35 min
- Frequency
- Hourly
- Estimated price
- €12–28
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Karlsruhe Hauptbahnhof to Heidelberg, Hauptbahnhof
- Ave. Duration
- 37 min
- Frequency
- Every 4 hours
- Estimated price
- €9–21
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Frankfurt to Mannheim, Hauptbahnhof
- Ave. Duration
- 35 min
- Frequency
- Hourly
- Estimated price
- €12–28
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Frankfurt to Mannheim, Hauptbahnhof
- Ave. Duration
- 35 min
- Frequency
- Hourly
- Estimated price
- €12–28
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Hauptbahnhof to Heidelberg, Hauptbahnhof
- Ave. Duration
- 39 min
- Frequency
- Every 3 hours
- Estimated price
- €15–35
- Website
- Deutsche Bahn Intercity (DB IC)
Train from München Hbf to Mannheim, Hauptbahnhof
- Ave. Duration
- 2h 45m
- Frequency
- Hourly
- Estimated price
- €55–130
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Basel SBB to Mannheim, Hauptbahnhof
- Ave. Duration
- 2h 6m
- Frequency
- Hourly
- Estimated price
- €40–100
- Website
- Deutsche Bahn Intercity (DB IC)
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from Perugia to Firenze S.M.N.
- Ave. Duration
- 2h 12m
- Frequency
- Every 4 hours
- Estimated price
- €18–25
- Website
- Trenitalia
Train from Perugia to Firenze S.M.N.
- Ave. Duration
- 2h 12m
- Frequency
- Every 4 hours
- Estimated price
- €18–25
- Website
- Trenitalia
Train from Perugia to Firenze S.M.N.
- Ave. Duration
- 2h 12m
- Frequency
- Every 4 hours
- Estimated price
- €18–25
- Website
- Trenitalia
- Phone
- +39 06 68475475
- Website
- Trenitalia Intercity
Train from Perugia to Firenze S.M.N.
- Ave. Duration
- 1h 29m
- Frequency
- Once daily
- Estimated price
- €16–30
- Website
- Trenitalia Intercity
Train from Perugia to Milano Centrale
- Ave. Duration
- 5h 38m
- Frequency
- Once daily
- Estimated price
- €50–90
- Website
- Trenitalia Intercity
Train from Perugia to Bologna Centrale
- Ave. Duration
- 3h 1m
- Frequency
- Once daily
- Estimated price
- €26–50
- Website
- Trenitalia Intercity
Train from Perugia to Firenze S.M.N.
- Ave. Duration
- 1h 29m
- Frequency
- Once daily
- Estimated price
- €16–30
- Website
- Trenitalia Intercity
Train from Perugia to Firenze S.M.N.
- Ave. Duration
- 1h 29m
- Frequency
- Once daily
- Estimated price
- €16–30
- Website
- Trenitalia Intercity
- Phone
- +31 30 751 5155
- Website
- Nederlandse Spoorwegen (NS)
Train from Frankfurt to Mannheim, Hauptbahnhof
- Ave. Duration
- 32 min
- Frequency
- 3 times a day
- Estimated price
- €7–15
- Website
- Nederlandse Spoorwegen (NS)
Train from Frankfurt to Mannheim, Hauptbahnhof
- Ave. Duration
- 32 min
- Frequency
- 3 times a day
- Estimated price
- €7–15
- Website
- Nederlandse Spoorwegen (NS)
Train from Frankfurt to Mannheim, Hauptbahnhof
- Ave. Duration
- 32 min
- Frequency
- 3 times a day
- Estimated price
- €7–15
- Website
- Nederlandse Spoorwegen (NS)
Train from München Hbf to Mannheim, Hauptbahnhof
- Ave. Duration
- 2h 44m
- Frequency
- Once daily
- Estimated price
- €35–70
- Website
- Nederlandse Spoorwegen (NS)
- Phone
- +49 30 2970
- Website
- Deutsche Bahn Regio (DB Regional)
Train from Karlsruhe Hauptbahnhof to Heidelberg, Hauptbahnhof
- Ave. Duration
- 36 min
- Frequency
- Every 30 minutes
- Estimated price
- €10–45
- Website
- Deutsche Bahn Regio (DB Regional)
- Phone
- +43 5 1717
- Website
- Österreichische Bundesbahnen
Train from Karlsruhe Hauptbahnhof to Heidelberg, Hauptbahnhof
- Ave. Duration
- 42 min
- Frequency
- 3 times a day
- Estimated price
- €17–26
- Website
- Österreichische Bundesbahnen
- Phone
- +43 (0) 51717
- Website
- Nightjet
Night train from Zuerich Hb to Heidelberg Hbf
- Ave. Duration
- 4h 2m
- Frequency
- Twice daily
- Estimated price
- €26–95
- Website
- Nightjet
- Sleeper Carriage
- €92–95
- Couchette Carriage
- €55–70
- Seating Carriage
- €26–32
Train from Hauptbahnhof to Heidelberg, Hauptbahnhof
- Ave. Duration
- 2h 19m
- Frequency
- Once a week
- Estimated price
- €13–16
- Schedules at
- DB ZugBus Regionalverkehr Alb-Bodensee GmbH (RAB)
- Phone
- +49 221 800 20 80
- [email protected]
- Website
- MSM Partyzug
Train from München Hbf to Mannheim, Hauptbahnhof
- Ave. Duration
- 3h 16m
- Frequency
- Once a week
- Schedules at
- MSM Partyzug
Train from Zürich HB to Basel SBB
- Ave. Duration
- 1h 13m
- Frequency
- Every 20 minutes
- Estimated price
- €30–55
- Website
- Swiss Federal Railways (SBB CFF FFS)
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Perugia to Florence
- Ave. Duration
- 1h 50m
- Frequency
- Twice daily
- Estimated price
- €13–20
- Website
- Flixbus
Bus from Karlsruhe central train station to Heidelberg Pre Waypoint
- Ave. Duration
- 44 min
- Frequency
- Hourly
- Estimated price
- €4–8
- Website
- Flixbus
Bus from Perugia to Fiumicino Aeroporto T3
- Ave. Duration
- 2h 25m
- Frequency
- 5 times a week
- Estimated price
- €17–26
- Website
- Flixbus
Bus from Perugia to Fiumicino Aeroporto T3
- Ave. Duration
- 2h 25m
- Frequency
- 5 times a week
- Estimated price
- €17–26
- Website
- Flixbus
- Phone
- +39 0362 185 0590
- [email protected]
- Website
- Onebus
Bus from Florence Villa Constanza Bus Station to Karlsruhe Central Bus Station
- Ave. Duration
- 11h 15m
- Frequency
- Once a week
- Estimated price
- €110–160
- Website
- Onebus
- Phone
- +39 06 88 93 82 32
- Website
- Itabus S.p.A.
Bus from Perugia Train Station Bus Stop to Milan Lampugnano
- Ave. Duration
- 6h 40m
- Frequency
- Once daily
- Estimated price
- €24–45
- Website
- Itabus S.p.A.
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from Milano, Autostazione Lampugnano to Zürich
- Ave. Duration
- 3h 40m
- Frequency
- 4 times a day
- Estimated price
- €20–35
- Website
- BlaBlaCar Bus
Want to know more about travelling around Germany
Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.
Related travel guides
Italy Travel Guides
Read the travel guide
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
5 incredible day trips from Florence by train
Read the travel guide
Booking & Getting There
Perugia to Heidelberg bus services, operated by FlixBus, arrive at Florence station.
Perugia to Heidelberg train services, operated by Trenitalia Frecce, arrive at Rho-Fiera Milano station.
Yes, the driving distance between Perugia to Heidelberg is 1028 km. It takes approximately 9h 52m to drive from Perugia to Heidelberg.
Book your Perugia to Heidelberg train tickets online with Omio.
Book your Perugia to Heidelberg bus tickets online with Omio.
There are 1243+ hotels available in Heidelberg.




















































