The main form of local transport is bus (although Zagreb and Osijek also have well-developed tram systems). Buses in major cities such as Dubrovnik, Rijeka, Split and Zadar run about once every 20 minutes, less often on Sunday. A ride is usually 10KN to 15KN, with a small discount if you buy tickets at a tisak (news-stand).
When it comes to public transportation in Croatia, buses are your best option. Bus network in Croatia is extensive. Buses are frequent, reliable, and affordable (though not cheap).
Bus stations are usually in the center of town, or within walking distance from the center. A price of a ticket includes your luggage too, although if you have a bicycle or additional bags, bus drivers can ask you to pay extra for the luggage.
Dubrovnik Bus Line 4 runs daily service from Hotel Palace, Lapad via Uvala Lapad, Iva Vojnovica, Boninovo to Pile (Old Town).
Taxis are still very expensive in Croatia, except in Zagreb and Rijeka. Taxi service is heavily regulated, and fares are fixed. Taxi-meters are a norm, so make sure your driver turns it on.
Uber is available in Zagreb and Split all year around, and in coastal towns like Dubrovnik, Zadar, or Rovinj only in high season (June to October). Uber in Croatia only works with licensed drivers.
In short, don’t plan much on using taxis, unless you don’t mind spending lots of money.
Whether you travel by your own car, or plan on renting a car, driving is definitely the best way of getting around Croatia.
Croatia is small and getting around Croatia by car is, not only the most comfortable, but often the fastest way to get around. It takes only 4 hours drive to reach Split from Zagreb, just over two hours to reach Rovinj, Plitvice Lakes, and Porec, and less than three hours to reach Zadar. Dubrovnik is the only faraway place to travel in Croatia by car (but that road trip offers the best scenery ever, and it’s totally worth the effort).
Getting around Croatia will sooner or later get you on a ferry. Ferries are often the only way to reach islands.