Picking a best time to visit South Africa is not a task easily accomplished. After all, this is a country famous for its sunshine and relatively warm winters.
Perhaps it's wise to consider what it is you wish to do and see, along with the South African tourism seasons. For example, if you are an avid twitcher, the country is on the flight path of birds from the north in mid-October - November. If it's the floral carpet spread of the Cape flower season that you wish to catch, visit the area when the winter rains are over at the first sign of spring, namely August and September. If you are going on a game safari, the best time is July through September, when the visibility is best and it's birthing season.
Another point you might want to take into account are the major South African holiday seasons, when the schools close and families en-masse head for the coast. The busiest period of all falls between mid- December and early January, coinciding with the Festive Season. Mid-winter is another prime time when locals head for warmer climes. You'll find the holiday crowds in destinations like Durban and Cape Town, but they do bring a lot of buzz in their wake.
If action and adventure is your thing, a number of activities are at their best after the summer's peak, such as diving, hiking and surfing. You may also want to time your trip to include a major sporting or entertainment event - these generally take place out of season too. And don't discount winter holidays either - the South African winter compares favourably with the European summer, and the tropical province of KwaZulu-Natal with its fine coastline will still offer a good beach holiday.
The best time to visit South Africa? Well, just about all year round.