Yes, all Indian nationals traveling to South Africa need a visa to enter the country, regardless of the intended length of stay or the purpose of the visit. There are only a few nationalities that are visa-free for South Africa, mostly limited to passport holders from select African and Southeast Asian countries.
Citizens of India intending to travel to the country for a short stay are now able to submit a South Africa eVisa application exclusively online, eliminating the need to apply in person from a South African embassy or consulate.
An approved electronic visa for South Africa from India will allow the holder to stay in the country for up to 60 days from the moment of entry. It may be issued as either a single entry or multiple entry visa online, depending on the purpose of the stay.
A South African eVisa allows Indian nationals to visit the country for purposes of either business, tourism, or transit. To travel to South Africa for other purposes or longer periods of permitted stay, it is necessary to obtain a South African embassy visa from an overseas diplomatic mission.