Bangladesh won the first one-day international at SuperSport Park in Centurion on Friday, ending their winless streak in South Africa.
After being brought in, Shakib Al Hasan led a strong Bangladesh batting performance, smashing 77 off 64 balls to help Bangladesh reach 314 for seven.
In response, South Africa was reduced to 36-3 by fast bowlers Shoriful Islam and Taskin Ahmed.
South Africa were bowled out for 276 runs despite Rassie van der Dussen’s 86 and David Miller’s hard-hitting 79.
Bangladesh had previously lost all six Tests, nine one-day internationals, and four Twenty20 internationals they had played against the Proteas in South Africa.
Bangladesh 314-7 in 50 overs (Tamim Iqbal 41, Litton Das 50, Shakib Al Hasan 77, Yasir Ali 50; M. Jansen 2-57, K. Maharaj 2-56).
South Africa 276 in 48.5 overs (H. van der Dussen 86, D. Miller 79; Shoriful Islam 2-47, Taskin Ahmed 3-37, Mehidy Hasan 4-61).