In most cases, the riches from natural resources fund a cleptocratic regime, which does very little for the actual people. Often, the riches create conflicts (wars, civil wars) between competing cleptocracies, and the people suffer greatly in result.
I don't know much about Botswana (I've been to other nearby countries in Africa, but not there), but just from looking at things like it's Gini index I'm skeptical. It definitely appears much better off than its neighbors though and seems to be on a good trajectory.
Botswana is generally considered one of the best-run countries in Africa, along with the island nations (Cape Verde, Seychelles, and Mauritius) and the countries in North Africa (Morocco to Egypt). For example, it's 5th in Africa the Human Development Index (behind Mauritius, Seychelles, Algeria, and Tunisia--and ahead of South Africa). In GDP (PPP) per capita, it's 4th, behind Seychelles, Mauritius, and Equatorial Guinea.