Croatia is a fairly small country but it is completely worth the extra money to take a plane into Dubrovnik. On my way in, I took an 8 hour overnight sleeper car from Zagreb to Split, then a 5 hour bus, as there are no trains directly into Dubrovnik. The reservation for the sleeper car was only 22€ with my Euro rail pass and was complete luxury, including coffee and a scone in the morning. On my way out I paid 540 Kuna and took a 45 minute flight from Dubrovnik to Zagreb. All I could think during the flight was: “This was so worth it!” One note: the runway at Dubrovnik is short and the planes seem to take off at a VERY sharp angle, so sharp in fact that most people on the plane were totally disoriented for about 10 seconds and the lady behind me started crying out, “Sweet Jesus!” Take it or leave it.
The old town is absolutely a must see! It is just lovely and kept my friend and I entertained for two days. The city buses make it very convenient to get to the old town from anywhere in Dubrovnik. There are a lot of shops, restaurants and gelaterias. We stopped at cafe Buja late on a Friday night. Someone told me the word Buja, translated from Croatian, means hole in the wall, which would make sense because you must walk through a tunnel in the town walls to get to it. The streets to get there were unlit and there were no signs, but once we crawled through the hole we found this marvelous little cafe on the cliffs right outside the walls of the old city. It was amazing! We also did the tour of the city walls for 50 Kuna (20 Kuna with student card). Even just walking around the pier of Dubrovnik is a real treat; it is lovely at night.
It really cannot be overstated how much more affordable booking online makes the accommodation. No where is this truer than in Dubrovnik where things book up fast and hotels and villas can charge much more for last minute accommodation. Booking on the internet a few days (or weeks) in advance will definitely pay off; just be sure your reservation is for a place actually in Dubrovnik and not one of the smaller surrounding villages (such as Mlini) which tend to pop up in searches for Dubrovnik accommodation. It’s too much of a hassle trying to get into the city from these smaller towns on the bus, and completely not safe trying to walk as there is no sidewalk, only a narrow highway road. At the train station people with spare bedrooms that are not officially registered as accommodation, and therefore not permitted to advertise for accommodation, mob you to see if you want to rent their room. I didn’t try it but it could be a last minute option if you’re desperate.
The islands around Dubrovnik are beautiful: we visited Lopud and Lokrum. Lopud has one restaurant with the best pizza I’ve ever eaten. You can get to both on cheap ferry rides for about 30 Kuna, so don’t go on those expensive tourist boats for 150 Kuna unless you really want a slightly more private ride. They are really beautiful and so much greener than the mainland. Croatia has an amazing amount of coastline and the islands I went to were absolutely stunning.