Denoted as a megadiverse country, the climate of South Africa means you can find everything from arid desert to a Mediterranean-type climate. Elevated areas like the Drakensberg Mountains are colder still, although snowfall is rare, even in winter. Average winter temperatures in South Africa hover around 15°C with average summer temperatures of about 25°C. Rainfall occurs more frequently in the winter, with June to August experiencing the most precipitation; it's fairly rare to get more than a couple of rainy days a month in the summer.
South Africa is in the southern hemisphere so the seasons are the opposite of those in the UK, but summer is still the most popular time to visit and winter the least popular. With so many things to do though consider taking advantage of the cheaper prices of the shoulder and low seasons. Most of South Africa is on holiday in mid-December to late January; travel outside of this month and you'll find all destinations are likely to be cheaper and quieter. Probably the most time-dependent activity is heading off on Safari. You really will want to go in the dry season, which runs from June to September, to make the most of the experience.
Top billing in South Africa is given to the Cape Town Festival, an eclectic mix of music and arts that takes over the city in March offering free events to one and all. Durban holds a literary festival in March too, with a focus on African writers and current events. Push yourself to the limit in the Augrabies with the extreme marathon! It lasts seven days in October. Alternatively you could run shorter distances with the elephants and rhinos through Addo Elephant Park in May. Extreme sports continue with the Asaba Cape Epic cycle race from Knysna to Cape Town. If sitting and watching the world go by is more your thing then head for the Hermanus Whale Festival in September. Finally, the National Arts Festival in Grahamtown is one of the largest and most important cultural events on the continent, celebrating arts of all types in early July.