South Africa had 18.4 overs to spare after the two men shared an opening partnership of 173.
India, put in to bat, totalled a mediocre 200 for nine.
South Africa replied with 201 for one to clinch a 4-0 series win.
The first match was washed out.
Smith, who hit seven fours and three sixes, ended a run of poor form in which he scored just one run in his previous three innings.
De Villiers faced 98 balls and hit 12 fours and a six in his career-best one-day score.
The openers were eventually separated in the 29th over when Smith's lofted drive to off spinner Harbhajan Singh was caught by Dinesh Karthik at long on but Shaun Pollock smashed 16 off 10 balls to finish the job.
Sachin Tendulkar's 55, his first half-century since he scored 65 against West Indies on September. 20 was India's top score.
The first test between South Africa and India starts in Johannesburg on December. 15.