There are 9 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 10m€65–136Bus
cheapest- Take the bus from Bari to Perugiabus 443
9h 25m€30–75Drive 556 km
- Drive from Bari to Perugiacar 556 km
5h 22m€90–130Fly to Perugia Sant'Egidio Airport
- Fly from Bari Karol Wojtyła Airport (BRI) to Perugia Sant'Egidio Airport (PEG)plane BRI - PEG
7h 49m€58–234Train via Rome (Trenitalia)
- Take the train from Bari Centrale to Roma Terminitrain Fr / ...
- Take the train from Roma Termini to Perugiatrain 4730 / ...
8h 8m€72–151Bus 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 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 25m€48–179Fly 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 14m€63–193Fly 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€67–257
Bari to Perugia by train (Trenitalia)
Comparing Your Travel Options
The cheapest way to get from Bari to Perugia is to bus which costs €30 - €75 and takes 9h 25m.
The fastest way to get from Bari to Perugia is to fly and train which takes 5h 14m and costs €60 - €200.
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 10m.
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 10m and costs €65 - €140.
It takes approximately 7h 10m 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 10m and costs €65 - €140. Alternatively, you can bus, which costs €30 - €75 and takes 9h 25m, you could also fly, which costs €55 - €240 and takes 7h 49m.
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 10m. Alternatively, FlixBus operates a bus from Bari to Perugia twice daily. Tickets cost €50–75 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 Perugia Sant'Egidio Airport via Cagliari
- Ave. Duration
- 7h 5m
- When
- Monday and Saturday
- Estimated price
- €75–220
Flights from Bari Karol Wojtyła Airport to Fiumicino International Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €23–120
Flights from Bari Karol Wojtyła Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- €30–130
Flights from Bari Karol Wojtyła Airport to Pisa International Airport
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- €35–200
- 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–150
Flights from Bari Karol Wojtyła Airport to Bologna Guglielmo Marconi Airport via Fiumicino International Airport
- Ave. Duration
- 3h 25m
- When
- Every day
- Estimated price
- €65–140
- Website
- flyulendo.com
Flights from Bari Karol Wojtyła Airport to Perugia Sant'Egidio Airport via Tirana
- Ave. Duration
- 8h 18m
- When
- Every day
- Estimated price
- €55–210
- Phone
- +39 06 5210550
- Website
- Trenitalia Frecce
Train from Bari Centrale to Ancona
- Ave. Duration
- 3h 52m
- 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–120
- Website
- Trenitalia Frecce
Train from Bologna Centrale to Firenze S.M.N.
- Ave. Duration
- 37 min
- Frequency
- Every 20 minutes
- Estimated price
- €12–22
- Website
- Trenitalia Frecce
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 31m
- Frequency
- Twice daily
- Estimated price
- €21–35
- Website
- Trenitalia Frecce
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 31m
- Frequency
- Twice daily
- Estimated price
- €21–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
- 1h 50m
- Frequency
- 4 times a day
- Estimated price
- €13–25
- 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
- €20–40
- Website
- Trenitalia Intercity
Train from Roma Termini to Perugia
- Ave. Duration
- 2h 29m
- Frequency
- Twice daily
- Estimated price
- €20–40
- Website
- Trenitalia Intercity
Train from Bologna Centrale to Firenze S.M.N.
- Ave. Duration
- 1h 16m
- Frequency
- Twice daily
- Estimated price
- €9–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 38m
- Frequency
- Every 3 hours
- Estimated price
- €22–35
- Website
- Trenitalia
Train from Roma Termini to Perugia
- Ave. Duration
- 2h 38m
- 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
- €11–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
- 5 times a day
- Estimated price
- €11–18
- Website
- Italo Treno
Rome2Rio's guide to FlixBus
Contact DetailsContact 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–75
- 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
- €30–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 and FlixBus.
There are 2126+ hotels available in Perugia.




























