Second ODI, Mirpur: South Africa 179-3 (48.1 overs) beat Bangladesh 173 (48.2 overs) by seven wickets
Nel tore through the Bangladesh top order at the start of the game
Andre Nel continued his destructive form with the ball as South Africa wrapped up their one-day series in Bangladesh with a game to spare.
Paceman Nel took 4-27 as they won the second game by seven wickets after bowling out Bangladesh for just 173.
The tourists struggled to 60-3 in reply but AB de Villiers (70) and JP Duminy (49) saw them home in Mirpur on 179-3.
South Africa will replace Australia as cricket's top-ranked one-day team if they win the series 3-0.
The final match takes place at the same ground on Friday and Graeme Smith's side will start as firm favourites after another undistinguished batting effort by Bangladesh.
Dismissed for just 178 in the opening game, they were quickly reduced to 18-4 by Nel and new ball partner Charl Langeveldt.
Tamim Iqbal was bowled by the third ball of the game from Nel, who had Mohammed Ashraful caught at long leg for a duck in his next over as the Bangladesh skipper skied an attempted hook shot.
Langeveldt won an lbw decision against Nazimuddin (11) before Nel had Shahriar Nafees caught behind as he jabbed uncertainly at a good delivery just outside off stump.
The slump was halted by Raqibul and Saqibul Hasan, who shared a 119-run partnership, although it took up 31 overs of their side's allocation.
Raqibul reached a 78-ball half century in only his second appearance and progressed to 63 before he gave a catch to Smith off Langeveldt.
Dhiman Ghosh was run out for a duck in the next over after South Africa coach Mickey Arthur asked for a TV reply when umpire Aleem Dar rejected the original appeal, and Nel then had Abdur Razzak caught behind, also without scoring.
Saqibul went for 52, having earlier passed 1,000 one-day runs, when he chipped a ball from off-spinner Johan Botha to cover and although Mashrafe Mortaza added 20 valuable runs before falling to Langeveldt (3-31), Bangladesh were finally all out in the 49th over.
Graeme Smith looks back after playing on to Abdur Razzak
Facing a modest target, South Africa suffered an immediate setback when Herschelle Gibbs shaped to play a ball from Mortaza through the leg-side and was given out lbw for three.
Bangladesh soon turned to spin in search of further breakthroughs and slow left-armer Razzak took a return catch to remove Hashim Amla (16) before tempting Smith (28) into a loose drive, which he only succeeded in edging into his stumps.
De Villiers and Duminy saw off the mini-crisis with some watchful batting and they kept the scoreboard ticking over with excellent running between the wickets.
They only struck three boundaries between them and it took De Villiers 87 balls to reach his 13th one-day fifty.
By then, however, the contest was effectively over and he finished things off in style with 11 balls remaining by hammering Tamim back over his head for a straight six.
South Africa captain Graeme Smith: "We bowled very well in the first 10 overs with Nel making the most of the new swinging ball.
"But our middle order is pretty inexperienced and I am glad the youngsters took the responsibility and came through with the win in the end."
Bangladesh skipper Mohammed Ashraful: "If we had scored around 225, then it would have been a fighting total, but we lost four wickets for 18 runs and it was always difficult to come back from that."