There are loads of out of date information online about connections between Bucharest and Sofia and vice versa, so I decided to enrich the internet with more current schedules. To complete your goal, either you will take a bus or train. Fly is an option too, but I know that is expensive.
I took a bus to travel to Sofia from Bucharest. As of march 2017 there are no longer any companies with minibuses that provides a service between these two capitols. My transport was a direct one.
I paid 120 Lei (around 26€) for the trip, and I bought the ticket at the Filaret Bus Station, from where the bus departs. Please note that you can pay only in cash, and there is no cash machine there, so be prepared. Purchasing at the station is the only option so far, so I am afraid it is not possible to book your sit online. Actually I remember, that when I approach the counter to buy a ticket, the kind lady told me that I need to wait 5 minutes till she will finish eating her banana…lol. I gave her 20 in case she had some afters to consume too. No problem whatsoever, I’ve been trough worst. Eventually banana lady served me, and she spoke as good English as was required to close the deal.
The Filaret Bus station, that probably isn’t very impressive but does the job, is located in southern part of the city, but still close to the center (around 20-30 mins walk from Parliament). Ultimately you can always take a bus, tram or taxi. My local Romanian friend advised me that taxi shouldn’t cost more than 8-9 Lei from the city center.
As I mentioned before, I didn’t manage to find any current info online, so I took a bus that was departing at 16.00. Now I know that there is another bus that leaves at 13.00, so you can arrive way earlier (god if I only knew, I wouldn’t have to drive with drank taxi driver in Sofia, I could just walk). It does say at the counter’s window that bus arrives at 23.30 in Sophia’s main station for buses and trains (located north of the city center), but we arrived at 22.40 probably due to the fact that the border wasn’t busy at all. We stopped there only for 5 minute, where our passports got checked. There is also another bus from different company that leaves at 22.30 from Filaret too, so you have 3 direct options: 13.00, 16.00 and 22.30, and they run from Monday to Sunday. The bus will leave from stand number 1. Even that it was a Friday, vehicle was almost empty, so I claimed all 5 sits at the end to stretch my legs. Joking, just 3. Mine did not have a toilet, so either don’t drink or use charming bathroom (1 Lei) at the Filaret Bus Station.
On the way it will stop just twice, and journey takes around 7h. First stop will be after the border on Bulgarian side and just for 10 minutes. I am sure there must be a toilet, but I couldn’t locate one. Second stop will be a bit longer, 20 minutes, where you can use a loo and buy something to eat or drink. Toilet will cost 0.30 Bulgarian Lev. Once you will reach your destination, you can walk 20 minutes to the center, take a taxi (I paid 4.40 Lev), tram or bus.
There are several buses that leaves hourly to Ruse (Bulgarian side). From there, just outside the border, you can catch another one to Sofia. As fare as I am aware it will be twice cheaper, but I just couldn’t be bothered .
Please check current timetable, but for sure train leaves twice a day from Nord Station at 12.45 and 22.25, and it should cost around 30 euros. My French friends from hostel told me that they are very comfortable but slow, and you can book a bed for overnight train there too.