There are 8 ways to get from Bari to Perugia by train (Trenitalia), bus, car, plane, or 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 (Trenitalia)
best- Take the train from Bari Centrale to Anconatrain Fr
- Take the train from Ancona to Folignotrain 4151 / ...
7h 13m€68–134Bus
cheapest- Take the bus from Bari to Perugiabus 443
9h 25m€29–80Drive 556 km
- Drive from Bari to Perugiacar 556 km
5h 22m€100–145Fly to Fiumicino International Airport, train
- Fly from Bari Karol Wojtyła Airport (BRI) to Fiumicino International Airport (FCO)plane BRI - FCO
- Take the train from Roma Termini to Perugiatrain
5h 20m€50–177Train via Rome (Trenitalia)
- Take the train from Bari Centrale to Roma Terminitrain Fr / ...
- Take the train from Roma Termini to Perugiatrain 4730 / ...
8h 13m€75–149Bus via Rionero in Vulture
- Take the bus from Bari via Capruzzi to Barile - SS 93bus 701
- Take the bus from Barile to Perugiabus
11h 15m€44–87Fly to Bologna Guglielmo Marconi Airport, train
- Fly from Bari Karol Wojtyła Airport (BRI) to Bologna Guglielmo Marconi Airport (BLQ)plane BRI - BLQ
- Take the train from Bologna Centrale to Firenze S.M.N.train
- Take the train from Firenze S.M.N. to Perugiatrain
5h 16m€66–188Fly to Pisa International Airport, train
- Fly from Bari Karol Wojtyła Airport (BRI) to Pisa International Airport (PSA)plane BRI - PSA
- Take the train from Pisa Centrale to Firenze S.M.N.train
- Take the train from Firenze S.M.N. to Perugiatrain
5h 56m€68–248
Bari to Perugia by train (Trenitalia)
Comparing Your Travel Options
The cheapest way to get from Bari to Perugia is to bus which costs €29 - €80 and takes 9h 25m.
The fastest way to get from Bari to Perugia is to fly and train which takes 5h 16m and costs €65 - €190.
Yes, there is a direct bus departing from Bari and arriving at Perugia. Services depart twice daily, and operate every day. The journey takes approximately 9h 25m.
No, there is no direct train from Bari to Perugia. However, there are services departing from Bari Centrale and arriving at Perugia via Ancona and Foligno. The journey, including transfers, takes approximately 7h 13m.
The distance between Bari and Perugia is 609 km. The road distance is 556 km.
The best way to get from Bari to Perugia without a car is to train which takes 7h 13m and costs €65 - €140.
It takes approximately 7h 13m to get from Bari to Perugia, including transfers.
Bari to Perugia bus services, operated by FlixBus, depart from Bari station.
Bari to Perugia train services, operated by Trenitalia Frecce, depart from Bari Centrale station.
The best way to get from Bari to Perugia is to train which takes 7h 13m and costs €65 - €140. Alternatively, you can bus, which costs €29 - €80 and takes 9h 25m.
What companies run services between Bari, Italy and Perugia, Italy?
You can take a train from Bari Centrale to Perugia via Ancona and Foligno in around 7h 13m. Alternatively, FlixBus operates a bus from Bari to Perugia twice daily. Tickets cost €50–80 and the journey takes 9h 25m. Itabus S.p.A. also services this route twice daily.
- Website
- ryanair.com
Flights from Bari Karol Wojtyła Airport to Fiumicino International Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €24–120
Flights from Bari Karol Wojtyła Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 1h 20m
- When
- Monday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €30–130
Flights from Bari Karol Wojtyła Airport to Bologna Guglielmo Marconi Airport via Tirana
- Ave. Duration
- 3h 30m
- When
- Tuesday and Sunday
- Estimated price
- €30–130
Flights from Bari Karol Wojtyła Airport to Pisa International Airport
- Ave. Duration
- 1h 20m
- When
- Friday, Monday, Saturday, Sunday, and Thursday
- Estimated price
- €35–190
- Website
- ita-airways.com
Flights from Bari Karol Wojtyła Airport to Fiumicino International Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €55–160
Flights from Bari Karol Wojtyła Airport to Bologna Guglielmo Marconi Airport via Fiumicino International Airport
- Ave. Duration
- 3h 15m
- When
- Every day
- Estimated price
- €65–140
- Website
- neosair.it
Flights from Bari Karol Wojtyła Airport to Fiumicino International Airport
- Ave. Duration
- 1h
- When
- Sunday
- Estimated price
- €100–330
- Website
- skyalps.com
Flights from Bari Karol Wojtyła Airport to Fiumicino International Airport via Mostar
- Ave. Duration
- 2h 55m
- When
- Monday and Friday
- Estimated price
- €130–300
- Phone
- +39 06 5210550
- Website
- Trenitalia Frecce
Train from Bari Centrale to Ancona
- Ave. Duration
- 3h 53m
- Frequency
- Hourly
- Estimated price
- €60–110
- Website
- Trenitalia Frecce
Train from Bari Centrale to Roma Termini
- Ave. Duration
- 4h 30m
- Frequency
- Every 2 hours
- Estimated price
- €65–110
- Website
- Trenitalia Frecce
Train from Bologna Centrale to Firenze S.M.N.
- Ave. Duration
- 38 min
- Frequency
- Every 20 minutes
- Estimated price
- €12–21
- Website
- Trenitalia Frecce
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 31m
- Frequency
- Twice daily
- Estimated price
- €20–35
- Website
- Trenitalia Frecce
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 31m
- Frequency
- Twice daily
- Estimated price
- €20–35
- Website
- Trenitalia Frecce
- Phone
- +39 06 68475475
- Website
- Trenitalia Intercity
Train from Bari Centrale to Ancona
- Ave. Duration
- 4h 40m
- Frequency
- Every 2 hours
- Estimated price
- €45–90
- Website
- Trenitalia Intercity
Train from Ancona to Foligno
- Ave. Duration
- 2h 1m
- Frequency
- 4 times a day
- Estimated price
- €14–25
- Website
- Trenitalia Intercity
Train from Roma Termini to Perugia
- Ave. Duration
- 2h 29m
- Frequency
- Twice daily
- Estimated price
- €21–40
- Website
- Trenitalia Intercity
Train from Bari Centrale to Roma Termini
- Ave. Duration
- 6h 24m
- Frequency
- Twice daily
- Estimated price
- €50–95
- Website
- Trenitalia Intercity
Train from Roma Termini to Perugia
- Ave. Duration
- 2h 29m
- Frequency
- Twice daily
- Estimated price
- €21–40
- Website
- Trenitalia Intercity
Train from Bologna Centrale to Firenze S.M.N.
- Ave. Duration
- 1h 16m
- Frequency
- Twice daily
- Estimated price
- €10–18
- Website
- Trenitalia Intercity
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 25m
- Frequency
- Twice daily
- Estimated price
- €16–30
- Website
- Trenitalia Intercity
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 25m
- Frequency
- Twice daily
- Estimated price
- €16–30
- Website
- Trenitalia Intercity
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from Ancona to Foligno
- Ave. Duration
- 1h 47m
- Frequency
- Hourly
- Estimated price
- €15–21
- Website
- Trenitalia
Train from Roma Termini to Perugia
- Ave. Duration
- 2h 43m
- Frequency
- Every 3 hours
- Estimated price
- €22–35
- Website
- Trenitalia
Train from Roma Termini to Perugia
- Ave. Duration
- 2h 43m
- Frequency
- Every 3 hours
- Estimated price
- €22–35
- Website
- Trenitalia
Train from Bologna Centrale to Firenze S.M.N.
- Ave. Duration
- 1h 35m
- Frequency
- 4 times a day
- Estimated price
- €10–15
- Website
- Trenitalia
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 2h 11m
- Frequency
- Every 2 hours
- Estimated price
- €18–25
- Website
- Trenitalia
Train from Pisa Centrale to Firenze S.M.N.
- Ave. Duration
- 1h 22m
- Frequency
- Every 15 minutes
- Estimated price
- €9–13
- Website
- Trenitalia
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 2h 11m
- Frequency
- Every 2 hours
- Estimated price
- €18–25
- Website
- Trenitalia
- Phone
- +39 06 8937 1892
- Website
- Italo Treno
Train from Bologna Centrale to Firenze S.M.N.
- Ave. Duration
- 38 min
- Frequency
- Twice daily
- Estimated price
- €10–18
- Website
- Italo Treno
Rome2Rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- Flixbus
Bus from Bari to Perugia
- Ave. Duration
- 9h 25m
- Frequency
- Twice daily
- Estimated price
- €50–80
- Website
- Flixbus
- Phone
- +39 06 88 93 82 32
- Website
- Itabus S.p.A.
Bus from Bari to Perugia
- Ave. Duration
- 8h 55m
- Frequency
- Twice daily
- Estimated price
- €29–55
- Website
- Itabus S.p.A.
- Phone
- +39 080 579 0211
- info@sitasudtrasporti.it
- Website
- sitasudtrasporti.it
Bus from Bari via Capruzzi to Barile - SS 93
- Ave. Duration
- 2h 35m
- Frequency
- 6 times a week
- Estimated price
- €8–12
- Schedules at
- sitasudtrasporti.it
- Phone
- +39 0972 24590
- booking@autolineemoretti.it
- Website
- autolineemoretti.it
Bus from Barile to Perugia
- Ave. Duration
- 7h 40m
- Frequency
- 3 times a week
- Estimated price
- €35–75
- Schedules at
- autolineemoretti.it
Want to know more about travelling around Italy
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
Want to know more about Flixbus?
Read the travel guide
Getting to Rome from the airport
Read the travel guide
Booking & Getting There
Bari to Perugia bus services, operated by FlixBus, arrive at Perugia station.
Bari to Perugia train services, operated by Trenitalia Frecce, arrive at Ancona station.
Yes, the driving distance between Bari to Perugia is 556 km. It takes approximately 5h 22m to drive from Bari to Perugia.
Book your Bari to Perugia train tickets online with Omio.
Book your Bari to Perugia bus tickets online with Omio, FlixBus and 12go.asia.
There are 2102+ hotels available in Perugia.


































