Wanindu Hasaranga, known for his leg-spin bowling, hit an unbeaten 42 after coming in to bat at number eight as Sri Lanka chased down their target of 290 with five balls to spare and lead the three-match series 1-0.
Hasaranga held his nerve after Sri Lanka slipped to 253 for seven following the departure of Thisara Perera for 32 to register his highest ODI score.
He built crucial partnerships including a 38-run stand with Perera and then put on 27 runs with Lakshan Sandakan for the ninth wicket.
With one to get off the last six ball Sandakan was run out but Keemo Paul bowled a no ball.
“Of course, winning is the ultimate thing but we made couple of mistakes that we have to learn from,” skipper Dimuth Karunaratne, who top-scored with 52, said after the victory.
“Both me and Avishka Fernando could have converted our fifties into bigger scores but we will look to correct that in future.”
Karunaratne and Fernando, who made 50, put on 111 runs for the opening wicket to lay the platform for what turned out to be the highest successful chase at the Sinhalese Sports Club ground.
For the West Indies, Alzarri Joseph claimed three wickets after Shai Hope made 115 in his team’s 289 for seven.
In response, Sri Lanka lost their way after their strong start despite wicketkeeper-batsman Kusal Perera hitting 42 coming in at number three.
Leg-spinner Hayden Walsh and Paul took two wickets each to regularly dent Sri Lanka along with Joseph but Wanindu Hasaranga stood firm.
The effort trumped Hope’s ninth ODI hundred after Sri Lanka invited West Indies to bat first.
Hope lost his opening partner early and was involved in the run out of Darren Bravo but laid the foundation for his team’s total.
Left-arm pace bowler Isuru Udana claimed three wickets including Hope’s prized scalp but gave away 82 runs from his 10 overs.
Skipper Kieron Pollard (nine) and Nicholas Pooran (11) also fell to Udana as West Indies let go of a chance to put up a bigger total.
“Normally guys like me and Pooran finish it off but it couldn’t happen today. Couple of soft dismissals in the middle really set us back,” said Pollard.
“I think we bowled too many bad balls in the start, gave them too many freebies, that’s where we lost the game. Our discipline was not there.”
The second match is in Hambantota on Wednesday. (AFP)