• Our partners include:

  • RailEurope
  • Deutsche Bahn
  • Trenitalia
  • SNCF
  • Flixbus
  • RENFE
  • Ouibus
  • BlaBlaCar
  • Booking.com
  • Skyscanner

There are 3 ways to get from Sofia to Pirot by bus, train or car

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2rio's travel planner.

Recommended option

Bus  •  1h 42m

  1. Take the bus from Sofia to Pirot

$7 - $11

Cheapest option

Train  •  4h 28m

  1. Take the train from Sofia to Dimitrovgrad 7990

$3 - $8

1 alternative option

Drive  •  1h 23m

  1. Drive from Sofia to Pirot 56.1 miles

$10 - $15

Questions & Answers

The cheapest way to get from Sofia to Pirot is to train which costs $2 - $8 and takes 4h 28m.

More details

The quickest way to get from Sofia to Pirot is to drive which costs $10 - $15 and takes 1h 23m.

More details

Yes, there is a direct bus departing from Sofia and arriving at Pirot. Services depart twice daily, and operate every day. The journey takes approximately 1h 42m.

More details

No, there is no direct train from Sofia to Pirot. However, there are services departing from Sofia and arriving at Bozurat via Dimitrovgrad. The journey, including transfers, takes approximately 4h 28m.

More details

The distance between Sofia and Pirot is 79 km. The road distance is 89.8 km.

Get driving directions

The best way to get from Sofia to Pirot without a car is to bus which takes 1h 42m and costs $7 - $11.

More details

The bus from Sofia to Pirot takes 1h 42m including transfers and departs twice daily.

More details

Sofia to Pirot bus services, operated by Matpu, depart from Sofia station.

More details

Sofia to Pirot train services, operated by Serbian Railways, depart from Sofia station.

More details

The best way to get from Sofia to Pirot is to bus which takes 1h 42m and costs $7 - $11. Alternatively, you can train, which costs $2 - $8 and takes 4h 28m.

Mode details

Map of how to get from Sofia to Pirot.
Launch map view
  • Distance: 49.1 miles
  • Duration: 1h 42m

What companies run services between Sofia, Bulgaria and Pirot, Serbia?

Matpu operates a bus from Sofia to Pirot twice daily. Tickets cost $7 - $11 and the journey takes 1h 42m. Nis Ekspres also services this route twice daily. Alternatively, Serbian Railways operates a train from Sofia to Pirot once daily. Tickets cost $1 - $5 and the journey takes 3h.

Train operators
Serbian Railways
Website
srbvoz.rs
Train from Sofia to Dimitrovgrad
Ave. Duration
3h
Frequency
Once daily
Estimated price
$1 - $5
Schedules at
srbvoz.rs
2nd Class Ticket
$1 - $3
1st Class Ticket
$3 - $5
Bus operators
Matpu
Phone
02 952 50 04
Email
matpu96@abv.bg
Website
matpu.com
Bus from Sofia to Pirot
Ave. Duration
1h 42m
Frequency
Twice daily
Estimated price
$7 - $11
Schedules at
matpu.com
Nis Ekspres
Phone
+381 18 255 177
Email
marketing@nis-ekspres.rs
Website
nis-ekspres.rs
Bus from Sofia to Pirot
Ave. Duration
2h 40m
Frequency
Twice daily
Estimated price
$4
Schedules at
nis-ekspres.rs
Book at
onlinetickets.nis-ekspres.rs

Want to know more about travelling around the world?

Rome2rio's Travel Guide series provide vital information for the global traveller. Read our range of informative guides on popular transport routes and companies - including Thanksgiving 2018: How to travel stress-free, How to get from Stansted Airport into central London and How to get from Luton Airport into central London - to help you get the most out of your next trip.

More Questions & Answers

Sofia to Pirot bus services, operated by Matpu, arrive at Pirot station.

More details

Pirot is 1h behind Sofia. It is currently 3:38 PM in Sofia and 2:38 PM in Pirot.

Sofia to Pirot train services, operated by Serbian Railways, arrive at Dimitrovgrad station.

More details

Yes, the driving distance between Sofia to Pirot is 90 km. It takes approximately 1h 23m to drive from Sofia to Pirot.

Get driving directions

There are 40+ hotels available in Pirot. Prices start at $21 USD per night.

More details