Am planning to take the RS tour to Bulgaria in late 2022. At the conclusion of the RS tour, I hope to visit friends in Croatia. Has anybody had any experience traveling from Sofia down to Zagreb, Croatia. Plane, train, bus? What's the best mode of public transportation? Or is it best to rent a car and drive? Just a one-way trip - seems best to fly home from Croatia rather than going back up to Sofia? Thoughts?
In my world, up means north and down means south. So you might want to take a closer look at a map of the area. The roads and rails in this part of Europe are not always in the best condition. You could rent a car, but that would be a pretty large one way drop off fee. And the shortest route is through Serbia, so you need to make sure the rental company allows you to leave the EU with the car, if not it will be a long drive via Romania and Hungary. And the shortest route will involve two border crossings.
Flying is probably the fastest way, but it doesn't seem to be any direct flights. But Air Serbia with a transfer in Belgrade should work. And things might change untill 2022, direct flights might show up.
Train is also an option, but will take some time. The Man in Seat 61 knows how to do it: https://www.seat61.com/international-trains/trains-from-Sofia.htm#Sofia_to_Zagreb Could be combined with a night in Belgrade. It is a cheap option though, can be done for €50 if The Man in Seat 61 is right (and he usually is).
An even cheaper option is the bus. Flixbus has a service between Sofia and Zagreb, but it is a 12 h overnight trip.
Overland travel in the Balkans is an adventure. If you have lots of time and are up for off-the-beaten-track destinations, you can string together a series of bus/train legs that will get you to Zagreb. But it will take several days if you want to see anything along the way. I can't imagine trying to push through on a single overnight bus ride. At least at night there would be minimal traffic and the bus would presumably do better than the 30 mph that was my experience in that part of Europe. The trains--when they exist--are normally not faster.
Driving wouldn't be an option for most people because of the sure-to-be-horrendous international drop fee if the rental company even permits transiting the necessary country or countries (via Serbia being the fastest route, as already mentioned).
I hate-hate-hate having to fly in the middle of a vacation, but anything other than flying is going to be time-consuming. If you want to explore bus options, you can take a look at Rome2Rio.com. You can't trust its travel times, frequencies or fares, so only use it to see what your options might be, then keep clicking through Rome2Rio.com until you reach the name of the company offering the service. Go to that company's website for accurate schedule information. Of course, a great deal may well change between now and 2022.
For what it's worth (I'd guess nothing), this is what I did in 2015 when I left Sofia: Bus from Sofia to Nis, Serbia (overnight stay). Bus from Nis to Podgorica, Montenegro (multiple nights in hotel, with side trips). Bus from Podgorica to Kotor (multiple nights in hotel, with side trips). Bus from Kotor to Zadar (overnight stay). Bus from Zadar to Zagreb (multiple nights in hotel).
That was the long way around; I had been through Beograd and Novi Sad (both interesting) earlier in the same trip as I traveled from Zagreb through Romania into Bulgaria. There are lots of very interesting destinations along that route, too, as well as in southern Hungary.
We have the exact same issue, but we will be going round trip from Zagreb. Our tour is also in September 2022. We figure we will give it more thought and exploring around March. Probably gonna fly though.