One-day international, Colombo: Sri Lanka 295-5 (50 overs) bt Bangladesh 220-6 (50 overs) by 75 runs
Sri Lanka claimed an unassailable 2-0 lead in the series after recording a comfortable 75-run win over Bangladesh.
Tharanga made his debut against West Indies in August.
Asked to bat first, Sri Lanka posted 295-6 from their 50 overs, left-hander Upul Tharanga hitting a maiden century.
Tharanga shared exactly 100 with Sanath Jayasuriya, who hit five fours and a six in his 40 from 45 balls before he fell to the last ball of the 15th over.
Shahriar Nafees made a patient 51 but Bangaldesh never threatened, Habibul Bashar the next highest scorer with 41.
In only his fifth one-day international, Tharanga had some early good fortune when he was dropped at second slip by Manjural Islam off the bowling of Tapash Baisya when on 13.
The 20-year-old left-hander went on to hit nine boundaries in 105 from 110 balls before he was tempted out of his ground by spinner Manjural Islam in the 38th over.
Skipper Marvan Atapattu added his 53rd one-day fifty, from a mere 43 balls but containing only three boundaries, with most of his runs coming in singles.
The unfortunate opening bowler Baisya suffered at the hands of the Sri Lankan batsmen, conceding 71 from his 10 wicketless overs.
Wily left-arm spinner Mohammad Rafique was the most successful bowler, picking up 2-47 in the middle of the innings to briefly reduce the scoring.
Sri Lanka opted to rest Jayasuriya after his innings, foregoing his useful left-arm spin to substitute him with Upul Chandana.
Bangladesh lost Javed Omar in the ninth over, the opener mis-timing one to mid-on, and after hitting two early fours Aftab Ahmed fell to the magical mystery of Muttiah Muralitharan.
Skipper Habibul then smashed two fours and a six in a defiant late innings, sharing 71 with substitute Tushar Imran, who fell just before the overs ran out, Bangladesh finishing with 220-6.
Habibul admitted that the going had been tough against Sri Lanka's combative bowling attack.
"They bowled really well," he lamented.
"We started okay but became slow in the
middle overs because of Muralitharan. There have been some
positives for us in the series, but we must bat better."
Sri Lanka: Marvan Atapattu (captain), Mahela Jayawardene, Sanath Jayasuriya, Upul Tharanga, Kumar Sangakkara, Russel Arnold, Tillakaratne Dilshan, Chaminda Vaas, Dilhara Lokuhettige, Muttiah Muralitharan, Dilhara Fernando Substitute: Upul Chandana
Bangladesh: Habibul Bashar (captain), Khaled Mashud, Mohammad Ashraful, Javed Omar, Aftab Ahmed, Shahriar Nafees, Mohammad Rafique, Nazmul Hossain, Syed Rasel, Tapash Baisya, Manjural Islam Rana Substitute: Tushar Imran