Blogger Jon Worth, who writes about European politics and travel among other topics, travelled across and around Bulgaria by train in June 2015. He entered the country on the international train from Thessaloniki, travelled to Sofia, Plovdiv, Veliko Tarnovo and Burgas, and left on the international train to Budapest. His blog post about his experiences is well worth a read for anyone planning a trip to Bulgaria.
It is some years now since I travelled by train in Bulgaria but it doesn't sound like very much has changed. Despite the availability of online ticketing on certain routes on the BDZ website, Jon suggests it is generally easiest to buy tickets in cash at the departure station. His summary is in line with my own experiences: "Bulgarian railways are old style, and generally rather slow ... if you want to see the landscape of the country, meet fascinating people, and feel the wind in your hair through an open window, and all of this on a shoestring budget, then a trip on Bulgarian railways is worth considering".