Shaminda Eranga ended Jimmy Anderson's stubborn resistance with the penultimate ball as Sri Lanka won the second Test at Headingley by 100 runs to clinch their first ever Test series win in England.
England resumed the fifth and last day at 57-5, needed to bat through the day to avoid defeat. The equation was helped by a rain-shortened morning session, when Sri Lanka didn't take a wicket.
No one has got a divine right to captain the side or play in the side if you're not performing.
But the momentum changed after lunch when Nuwan Pradeep removed Joe Root (31), when he edged to Lahiru Thirimanne at gully.
Dhammika Prasad then dismissed Matt Prior (10) with a bouncer played to Kaushal Silva at short-leg for his maiden five-wicket haul in a Test.
Herath followed Prasad by striking twice, removing Chris Jordan (21) and Stuart Broad (0) lbw. Ali reached his maiden Test century from 281 balls with a flick to fine leg for four off Pradeep. He batted all day for England, including a 20-over partnership with Anderson.
Anderson faced 55 balls without scoring in a desperate last-wicket stand with Moeen Ali (108 not out) before he fended an Eranga bouncer to Rangana Herath at leg gully, giving Sri Lanka a victory of 1-0 series victory with one delivery to spare.
Anderson in tears
The Sri Lanka players piled on each other in celebration, while Anderson slumped over his bat. He was in tears as he accepted England's player of the series award.
England captain Alastair Cook, who posted scores of only 17 and 16 in the Test, accepted that scrutiny over his captaincy would intensify while his own form and his team's performances continue to drop.
"You're there at the top of the order to score runs and when you haven't done it for 12 Test matches it becomes harder and harder," Cook said. "No one has got a divine right to captain the side or play in the side if you're not performing."