Tharanga, Marvan Atapattu and Mahela Jayawardene all scored fifties as Sri Lanka cruised to an 88-run victory against Bangladesh in a one-day international in Colombo, on Wednesday.
Sri Lanka made 269 for nine wickets in their 50 overs and then restricted Bangladesh to 181-9.
Opener Shariar Nafees provided some resistance with 39 before being brilliantly caught and bowled by Tillakaratne Dilshan.
Wicketkeeper Khaled Mashud also contributed a gritty 39 to delay Sri Lanka's victory with an unbroken 54-run last wicket stand with Tapash Baisya (22 not out).
Sri Lanka pace bowler Farveez Maharoof claimed three wickets for 29 runs.
Bangladesh's run chase started badly as Javed Omar (14) was run out by a direct hit from Russel Arnold at backward point.
Dilhara Fernando then had Tushar Imran caught behind before deceiving Mohammad Ashraful with a slower ball that he skied to mid-on.
Substitute Upul Chandana chipped in with the wicket of skipper Habibul Bashar before Maharoof reduced the visitors to 103-8.
Sri Lanka opener Tharanga reached his first one-day half century on his way to scoring 60 in his fourth game.
Atapattu compiled 55 and the pair put on 76 for the second wicket after Sanath Jayasuriya was bowled by an inswinger from Baisya for 25.
In-form vice-captain Jayawardene finished the innings off strongly with a rapid 50 from 35 balls as wickets tumbled regularly in the final slog.
Bangladesh were guilty of several fumbles in the field, however, with Tharanga being dropped in the slips on eight and then surviving a run-out chance on nine. He was given another life when dropped at backward point on 58.
Atapattu was also dropped early in his innings and Mashud missed a stumping chance when the Sri Lanka captain had made 40.
Bangladesh debutant paceman Syed Rasel picked up two wickets.
The second match of the series is on Friday in Colombo.
Sri Lanka innings:
U. Tharanga b A. Ahmed 60
S. Jayasuriya b Baisya 25
M. Atapattu c Omar b Rafique 55
K. Sangakkara c Nafees b A. Ahmed 22
M. Jayawardene run out 50
R. Arnold run out 12
T. Dilshan c Rasel b Islam Rana 1
C. Vaas c Nafees b Rasel 16
M. Muralitharan c Rafique b Rasel 0
F. Maharoof not out 0
Extras (lb-7 nb-3 w-17 b-1) 28
Total (for 9 wickets, 50 overs) 269
Fall of wickets: 1-51 2-127 3-178 4-186 5-227 6-230 7-267 8-268 9-269
Did not bat: D. Fernando
Bowling: Baisya 10-1-57-1 (w-2), Rasel 10-0-42-2 (nb-3 w-2), Rafique 10-0-63-1 (w-3), Mahmud 5-0-26-0, A. Ahmed 10-0-55-2 (w-5), Islam Rana 5-0-18-1 (w-1)
J. Omar run out 14
S. Nafees c & b Dilshan 39
T. Imran c Sangakkara b Fernando 6
M. Ashraful c Atapattu b Fernando 4
H. Bashar lbw b Chandana 14
A. Ahmed b Maharoof 2
M. Islam Rana c Jayasuriya b Maharoof 5
K. Mashud not out 39
M. Rafique c Muralitharan b Maharoof 2
S. Rasel lbw b Chandana 15
T. Baisya not out 22
Extras (lb-4 nb-4 w-11) 19
Total (for 9 wickets, 50 overs) 181
Fall of wickets: 1-17 2-41 3-51 4-79 5-84 6-88 7-94 8-103 9-127
Bowling: Vaas 6-1-21-0 (w-1), Maharoof 7-1-29-3 (nb-4 w-3), Fernando 7-1-29-2 (w-2), Dilshan 10-2-38-1 (w-2), Muralitharan 10-2-22-0 (w-1), Chandana 10-0-38-2 (w-1)
Result: Sri Lanka won by 88 runs