Rangana Herath picked up four wickets while spin partner Milinda Siriwardana took three as Sri Lanka defeated the West Indies by 72 runs in the second and final cricket Test to win the series 2-0.
West Indies, who lost the first Test in Galle by an innings and six runs, were all out for 171 in the second session on the final day of the match as their wait for a first win in the format in Sri Lanka continues.
The tourists made a bright start in their chase of 244 but their hopes of a series-levelling win dimmed after losing three quick wickets to the spinners in the morning, with batting mainstay Darren Bravo (61) the only one to offer some resistance.
"It was a hard-fought win, our bowlers were under constant pressure because our batsmen didn't deliver," Sri Lanka captain Angelo Mathews said at the presentation. "I never had doubts about my bowlers."
"Rangana Herath has enough experience... He showed his masterclass at the end."
The Windies had resumed on 20 for one after rain washed away the final session on the third day and the entire fourth day's play and looked in firm control of their chase.
Shai Hope, who was unbeaten during the weather disruption, and Bravo started positively, taking the attack to the spinners, and added 60 for the second wicket.
Mathews turned to all-rounder Siriwardana to break the stand and the left-arm spinner did exactly that by dismissing Hope in his fifth delivery.
Hope danced down the wicket to the bowler but the ball spun enough to beat his bat and resulted in an easy stumping for wicketkeeper Kusal Perera.
Out-of-form Marlon Samuels (six) survived several nervous moments before falling to Dilruwan Perera with Mathews completing a sharp catch at slip.
Siriwardana, who was adjudged man of the match for his all-round performance, claimed his second wicket when Jermaine Blackwood (four) was out leg before with West Indies quickly slumping from 80 for one to 102 for four.
Blackwood challenged the umpire's decision but failed to overturn the decision.
Left-hander Bravo handled the spinners well with some positive footwork and completed his 13th half century in Tests with three fours and two sixes.
Herath, who was targeted by Bravo and hit for two consecutive sixes, got in on the act after lunch by dismissing wicketkeeper Denesh Ramdin (10) and Bravo in the same over to banish any hopes of a West Indies victory.
"As a spinner and a bowler, we got to take responsibility," Herath said after being adjudged the man of the series for his 15 wickets in two Tests.
"As a bowler you might get hit for three or four sixes. I don't mind. At the end we took them out."
The wily left-arm spinner also dismissed Jerome Taylor (1) and then returned to take the final wicket of Kemar Roach (13).
West Indies captain Jason Holder rued the lack of patience from the team's batsmen.
"We got to look at our games. We just got to be a bit more patient," Holder said. "Everytime we came under little pressure from the Sri Lanka bowlers, we succumbed to it."