Upvote:5
Let's split this into two.
I have dual citizenship from both a VWP country and a non-VWP country?
If you are flying under the terms of the VWP, with your VWP passport, you must apply for ESTA. If you are using your non-VWP country's passport, you will require a visa and therefore ESTA does not apply to you.
Upvote:5
Yes, you must declare all citizenships you have or have had.
Some citizenships (though South Africa is not currently among them) will disqualify you from using the VWP even if you're also a national of a VWP country and traveling on its passport, so they want to know all of them.