It came slower than expected, as afternoon rain and some studied defense threatened to take the game into the final day, but Sri Lanka eventually triumphed to seal their six consecutive Test victory - a first for a sub-continental side - and take an early lead in this Janashakthi National Test series.
Zimbabwe, resuming today on 64 for two after a full moon holiday on Sunday, were bowled out for 236 in their second innings to lose by the comprehensive margin of an innings and 166 runs - Sri Lanka's largest victory in their 19-year history.
Zimbabwe did bear the brunt of some poor decision-making - though thankfully not today - but the size and manner of their defeat would have severely dented morale, making a comeback in the second Test in Kandy starting Friday an unlikely prospect.
Acting captain Stuart Carlisle believed his side could come back in Kandy, but only if the batsmen started to cash in once they had played themselves in. No Zimbabwean batsman scored a half-century, but there were nine contributions of 25 or more.
"We are doing the hardwork and getting established at the wicket - which is a positive - but then throwing away our wickets. We are not going to be successful if we continue to score 30s and 40s - we need big scores," he said afterwards.
Muttiah Muralitharan was once again the chief wicket-taker, picking up four wickets in the innings and eight in the match, to round off a remarkable year for the off-spinner in which he claimed 80 wickets in 11 games, the highest ever haul by a spinner in a calendar year. Only Dennis Lillie (85 wickets in 13 games) has taken more.
Zimbabwe had begun the morning well, surviving the first hour of the morning without further loss. But the morning drinks interval appeared to break the concentration of Carlisle (32). The 29-year-old tried to square cut a ball from Charitha Buddika Fernando that was too close to his body to be caught behind by man of the match Kumar Sangakkara behind the stumps (93 for three).
The wiry built medium pacer struck again in his next over has the left-handed Gavin Rennie (4) edged into the slips and Mahela Jayawardene scooped up the ball with his fingers just before it brushed the turf.
Nightwatchman Travis Friend continued to defy Sri Lanka's bowlers. Using his long reach to good effect and playing with limited ambitions, he batted for six minutes short of three hours for his 44.
But Zimbabwe really needed leading batsman Andy Flower (10) to fire. He started well enough, spending 35 minutes playing himself in, before Nuwan Zoysa drifted an inswinger past his defenses (127 for five).
Friend finally fell as Muralitharan switched to around the wicket and jack-knifed an off-break through an attempted straight drive and Grant Flower (18) was caught at silly point for the second time in the match (145 for six).
Sri Lankan hopes of a four-day victory and a long evening celebrating the New Year then dipped as a sharp shower drenched the outfield, forcing the players off for an early tea. But the sunshine returned and despite the loss of 59 minutes, Sri Lanka just managed to secure victory before a heavier and more prolonged downpour after the awards ceremony.
Craig Wishart (27) played a pugnacious innings with five fours before he clipped lamely into the hands of mid-wicket and both Gary Brent (7) and Henry Olonga (0) edged behind when Sanath Jayasuriya took the new ball. Heath Streak was left unbeaten for the second time in the match on 36.