On my next trip to Prague I would like to visit the Punkva caves and Macocha abyss. Can I get there by public transport or is it better to rent a car from Prague?
By public transport it's little harder to get there, but yes, it is possible:
1) Go to Brno first. The easiest and most comfortable is by bus with the company Student Agency (it's very popular transport - I recommend to buy a ticket in advance - you can do it online)
2) Brno to Blansko by train and Blansko to Punkva caves by bus
Search departures on jizdnirady.cz (there is English version)
and enjoy beauties of Czech Republic! :)