Johannesburg was a bit of a base for us. We crossed into South Africa three times in our trip but never stayed for more than four days.
Johannesburg is a large and vibrant city, and less than 14 hours direct from Sydney (we love the direct flights!).
We stayed at three different hotels over five nights depending where we were in our trip
Winston Hotel, Rosebank
A relatively quick train ride from the airport this place is a little slice of heaven, nice and quiet but close enough to amenities
Intercontinental, OR Tambo International Airport
Great for a stopover but a little on the pricey side. The food is excellent (don't miss your flight on the breakfast buffet!)
At the same price point as the Winston I wasn't overally impressed with this one, ok, but felt tired.
We mainly had evening meals in the hotels, but the food in general was fantastic in Johannesburg, perhaps the influence of so many different cultures
We spent a half day in Pretoria, which is about an hours drive from Johannesburg
In Johannesburg and Soweto itself we mainly concentrated on the museums