The average train between Vratsa and Sofia takes 2h 54m and the fastest train takes 1h 45m. The train service runs several times per day from Vratsa to Sofia. 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 every 3 hours between Vratsa and Sofia. The earliest departure is at 5:20 AM in the morning, and the last departure from Vratsa is at 8:52 PM which arrives into Sofia at 5:20 AM. All services require a transfer, and take on average 2h 54m. The schedules shown below are for the next available departures.

2h 31m • 1 change

2h 36m • 1 change

2h 8m • 1 change

2h 21m • 1 change

2h 31m • 1 change

2h 36m • 1 change

2h 8m • 1 change

2h 21m • 1 change

2h 31m • 1 change

2h 36m • 1 change

2h 8m • 1 change

2h 21m • 1 change

2h 31m • 1 change

2h 36m • 1 change

2h 8m • 1 change

2h 21m • 1 change

2h 31m • 1 change

2h 36m • 1 change

2h 8m • 1 change

2h 21m • 1 change
Want to know about travelling from Vratsa to Sofia? 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 Vratsa to Sofia. However, there are services departing from Vratsa station and arriving at Sofia station via Sofia Sever. The journey, including transfers, takes approximately 2h 54m.
Vratsa to Sofia train services, operated by Bulgarian Railways (BDZh), depart from Mezdra station.
Vratsa to Sofia train services, operated by Bulgarian Railways (BDZh), arrive at Sofia Sever station.
The distance between Vratsa and Sofia is 60.2 km. The road distance is 100 km.
Bulgarian Railways (BDZh) operates a train from Mezdra to Sofia Sever hourly. Tickets cost $1–2 and the journey takes 1h 20m. Romanian Railways (CFR) also services this route once daily.