1. Plan to rent a car
Public transit isn't really a thing, and where it is you'll be explicitly warned not to take it. You can try the Baz Bus, which is a hop on/hop off service for tourists/backpackers operating between the major cities. However, you are restricted to their routes and their schedules. If you want to deviate from their routes, you're on your own. Not to mention, it was cheaper for the two of us to split the cost of a car rental than two Baz Bus tickets from Johannesburg to Cape Town. You'll save even more money making regular trips to the grocery stores (look for Shoprite or Spar) rather than eating out every night.
Just a regular sedan will do, you don't need anything crazy unless you have a specific reason From the people we talked to, it seemed cheaper to arrange the rental before coming to South Africa. You will definitely find better deals online rather than asking for quotes in person. Be sure to read the terms and conditions too.
2. Distances are big
Not just that South Africa is a big country (it is!), but travel on the roads can be quite slow. There's a good network of freeways connecting the major centres, but you'll probably have to venture off of these to get where you want to go. Additionally, many of these are toll roads which can surprisingly add up quickly (especially with the fees from the rental company - did I mention you should read the terms and conditions?). You can avoid these by taking alternative highways. These highways often come along with massive/unmarked speed bumps and semis going 30 km/hr. There's also "Stop n Go" construction zones, where they inexplicably close one lane for kilometres so you have to alternative with traffic coming the other way.