Basically, if you are not constrained then it is generally considered that the best season is the dry season in any country in Africa. In Kenya and Tanzania this is approximately December to February and June to October. In South Africa the drier seasons are generally January to April and May to September when trees and bushes are bare making for enhanced visibility. Namibia, Botswana and Zimbabwe all have regional variants but generally the drier periods are May to October. If you are looking for the absolute optimum time for game-viewing then towards the end of the dry season offers the best chances of some phenomenal encounters.
As with the rest of the world, climates are changing year in, year out and it is becoming harder to define specific dates and periods. In any country there are regional variants plus there are also many positives to wildlife viewing in the so-called rainy seasons. For example, there are far less tourists around making for a more peaceful safari experience. Also, the rains are never all day affairs wherever you are, tending to come in short and sharp bursts leaving a refreshing air behind them. Cooler temperatures all round create a more comfortable atmosphere and the scenery is lush and green making photography a dream.
For many, the ultimate season for an African safari is the famous migration between Tanzania and Kenya – the highlight of which is the crossing of the Mara River between July and September of over a million wildebeest. Please see The Wildebeest Migration for more information.