Pathum Nissanka's superb unbeaten century guided Sri Lanka to an ultimately commanding eight-wicket win at The Oval on Monday as they ended a decade-long wait for a Test-match victory in England.
Sri Lanka, set a target of 219, reached that total for the loss of two wickets before lunch on the fourth day, with Nissanka 127 not out and Angelo Mathews 32 not out in an unbroken stand of 111.
Victory gave Sri Lanka just a fourth Test win in England and first since a 100-run success at Headingley back in 2014.
England, however, took this three-match series 2-1 after wins at Old Trafford (five wickets) and Lord's (190 runs).
But defeat meant England, who whitewashed the West Indies 3-0 earlier in the season, failed to achieve a first home campaign clean sweep since 2004, when Michael Vaughan oversaw seven successive wins.
Nissanka, named player-of-the-match after also making 64 in the first innings, told Sky Sports: "It was a great opportunity to play in England and I enjoyed that innings."
"I just wanted to play my normal game and I have done that," added the opener, who spent two years out of the Test side.
And for Sri Lanka captain Dhananjaya de Silva, there was no doubting the significance of leading his country to only their fourth win in 21 Tests in England.
"This is one of the happiest moments in my career and my life," said De Silva.
"We had a tough time in the last two weeks so to come here and get a win in English conditions against an English team, it is a very good moment for me, my team, and my country as well."
Sri Lanka resumed on 94-1, already well-placed to end a run of seven straight Test defeats by England.
Nissanka, recalled at Lord's, was 53 not out and Kusal Mendis unbeaten on 30.
Mendis, however, had added just nine runs to his score when he hooked a Gus Atkinson bouncer to fine leg where Shoaib Bashir, doing well to sight the ball on a gloomy morning, held an excellent low catch diving to his left.
Sri Lanka were now 108-2 as Mathews, who made a brilliant 160 in their Headingley success a decade ago, walked in to bat.
England captain Ollie Pope, with Sri Lanka making good progress against the quicks at 137-2, brought on off-spinner Bashir.
Bashir, however, promptly conceded 10 runs in an over, Nissanka pulling a dragged down ball to square leg and Mathews sweeping another four.
The diminutive Nissanka's punched three off Atkinson through point saw the 26-year-old complete an excellent 107-ball hundred including 11 fours.
And having reached the landmark, Nissanka hooked fast bowler Olly Stone for two sixes.
Nissanka ended the match by cutting Bashir for four, having already surpassed his previous highest Test score of 103 against the West Indies at North Sound in 2021.
England squandered several strong positions, including collapsing from 261-3 to 325 all out in their first innings despite 154 from Pope -- his first century since stepping in for the injured Ben Stokes as skipper at the start of this series.
They also allowed Sri Lanka to recover from 93-5 to 263 in reply, with Pope deploying an all-spin attack after tea on a gloomy second day.
England led by 62 runs on first innings.
But their top-order batted as if they had double that lead second time around, with England collapsing spectacularly to 82-7 before being dismissed for 156 in just 34 overs on Sunday.
Lahiru Kumara took 4-21 and left-arm swing bowler Vishwa Fernando 3-40 including the prize scalp of Joe Root for just 12.
Only wicketkeeper Jamie Smith's counter-attacking 67 off 50 balls, including 10 fours and a six, ensured Sri Lanka were chasing more than 200 for victory.
"It's disappointing not to be on the right side of the result," said Pope. "Day three (Sunday), we probably shot ourselves in the foot a little bit.
"We weren't at our best and credit to Sri Lanka. The way Nissanka played was high-class and they deserved to win this Test."