It is always hard to know where to eat. In general I perfer to find a place a little bit outside the most obvious tourist tracks. Even though Dubrovnik old town is quite touristic, there are some more hidden choices. To our surprise, not so many people had discovered the two restaurants on the square by the Jezuit church. During our stay we tried both of them. At the restaurant called Jezuit I had the fish platter, and were served a really nice seabass. The other day we went to the restaurant called Capon, meaning rooster. Their speciality was rooster obviously enough, given the name of the restaurant. The recipe they used dated back to the 16th century, and the meat was served with a sauce of sour oranges and honey.
Even though we were in Croatia, we went to the Bosnian restaurant Taj Mahal one of the evenings. We ordered the Djengis Can to share. As it consisted of more or less only different kinds of meat, we ordered vegetables as well. They also had the traditional cevapi. I did not taste it there, but I tasted it in Sarajevo a few years ago. According to a Bosnian friend of mine, the ones in Sarajevo are particularly good.
I also went up with the cable car one evening, and there is a restaurant on the top. I did not eat there, but the location is great with a very nice view of the city. Most of the tables were reserved, so it would be vice to book in advance.
To finish the evening, I strongly recommend one of the two Buza bars, outside the city walls with a great view of the ocean. It is not the cheepest bar in town, but worth the experience.