England pulled off one of the most remarkable victories in Test history as they skittled Sri Lanka for just 82 on the final afternoon to win the first Test by an innings and 14 runs in Cardiff.
Graeme Swann (four for 16) and Chris Tremlett (four for 40) were the heroes as the tourists simply crumbled in just 24.4 overs.
England had briefly batted when play got under way at 3pm after yet more rain at the SWALEC Stadium, Ian Bell (103 not out) getting his 13th Test ton before they declared on 496 for five - a lead of just 96, which incredibly proved to be enough.
There was little suggestion of the drama to come when Bell took one off Farveez Maharoof's first ball of the day to move to 99.
He was twice denied boundaries off Thisara Perera by good fielding but if there were any nerves, the Warwickshire batsman quickly erased them as he threaded Perera wide of gully to move to 103.
His celebration, in front of a crowd that was then measurable in the dozens rather than the hundreds, consisted of running from the field to signify the declaration at 496 for five - a lead of 96.
With James Anderson off the field due to the side strain that is certain to rule him out of next week's Lord's Test, Tremlett joined Broad in taking the new ball.
Broad beat Tharanga Paranavitana once in the opening over but Tremlett went one better in the second, finding the edge with a fuller ball as Strauss pouched the catch at slip.
Tillakaratne Dilshan added a flowing four and an edge to third man but he was next man down in the fourth over as Tremlett snagged a second wicket.
He banged one in at Dilshan, with ball touching glove and thigh pad before looping up for a simple return catch. Dilshan immediately reviewed the decision but had no case to do so.
Broad was also causing problems, first beating Mahela Jayawardene with a leg-cutter then seeing the same batsman nick short of the slips.
Kumar Sangakkara flashed loosely at Tremlett only for his shot to land safe as his side reached lunch on 32 for two.
Tremlett picked up after the tea break where he had left off before it, locating the edge of Jayawardene's bat with the fifth ball of the session.
Strauss was again waiting at first slip for to leave Sri Lanka rocking.
Thilan Samaraweera was in at five, sporting an elbow injury inflicted by Tremlett on day one, and his stay was a brief one. He lasted nine unimpressive deliveries before he dragged on to his stumps to give Swann a first success.
Sangakkara looked the key at this point but he also appeared some way short of his unflappable best, beaten too often outside off and being struck in the chest after misjudging one from Tremlett.
He joined the procession when he fed Strauss a third catch off a testing delivery from Swann for a streaky 14.
Three balls later 43 for five became 43 for six as Swann did enough to find Maharoof's edge. Matt Prior snared a smart catch and Sri Lanka again wasted a review as they attempted to overturn the umpire's verdict.
By now Swann had three wickets in eight balls but unbelievably worse was around the corner.
With the first ball of his ninth over Tremlett feathered Prasanna Jayawardene's glove to give Prior another catch.
Billy Doctrove reprieved the batsman but England sent the decision upstairs, where third umpire Rod Tucker sent the wicketkeeper on his way for three.
The 922 spectators there were could hardly could hardly take their eyes off the action, with Rangana Herath becoming the eighth man down six balls later.
Swann was the bowler, earning an lbw decision from a wild stroke.
Perera added some quick runs but was lucky to see Bell and substitute fielder Stewart Walters collide when he lobbed Broad into the onside.
There was no such mishap when Broad again pinned Perera on the backfoot, the ball fended to short leg where Bell took a memorable one-handed catch.
Last time they were in the Welsh capital in 2009 England saved an Ashes match with a famous last-wicket stand between Monty Panesar and Anderson.
Sri Lanka could not summon the same fighting spirit and their final pair stayed together just two balls before Broad found too much bounce and pace for Suranga Lakmal and Alastair Cook took the catch.
Tremlett finished with four for 40, Swann taking a superb return of four for 16, while Broad completed the job with two for 21.
England's superiority had been clear when play ended on day four but with so much time already lost from the game, it was hard to conceive of them forcing a result today.
In the end, they had time to spare.
England vs. Sri Lanka Scoreboard
Sri Lanka 1st Innings 400, England 1st Innings, (Overnight 491-5)
Andrew Strauss c Mahela Jayawardene b Lakmal 20
Alastair Cook c Prasanna Jayawardene b Maharoof 133
James Anderson c Mahela Jayawardene b Mendis 1
Jonathan Trott b Dilshan 203
Kevin Pietersen lbw b Herath 3
Ian Bell not out 103
Eoin Morgan not out 14
Extras: (10b, 4lb, 5nb) 19
TOTAL: (for five wickets declared) 496
Fall of wickets: 1-46, 2-47, 3-298, 4-305, 5-465.
Did not bat: Matt Prior, Stuart Broad, Graeme Swann, Chris Tremlett.
Bowling: Suranga Lakmal 22-4-68-1 (1nb), Thisara Perera 24-5-81-0, Tillakaratne Dilshan 16-1-60-1, Farveez Maharoof 28-3-92-1 (3nb), Ajantha Mendis 21-4-66-1 (1nb), Rangana Herath 44-7-115-1.
Sri Lanka 2nd Innings
Tharanga Paranavitana c Strauss b Tremlett 0
Tillakaratne Dilshan c & b Tremlett 10
Kumar Sangakkara c Strauss b Swann 14
Mahela Jayawardene c Strauss b Tremlett 15
Thilan Samaraweera b Swann 0
Prasanna Jayawardene c Prior b Tremlett 3
Farveez Maharoof c Prior b Swann 0
Thisrara Perera c Bell b Broad 20
Rangana Herath lbw Swann 3
Ajantha Mendis not out 12
Suranga Lakmal c Cook b Broad 0
Extras: (5b) 5
TOTAL: (all out) 82
Fall of wickets: 1-1, 2-10, 3-33, 4-36, 5-43, 6-43, 7-43, 8-52, 9-82.
Bowling: Stuart Broad 7.4-1-21-2, Chris Tremlett 10-2-40-4, Graeme Swann 7-1-16-4.
Result: England wins by an innings and 14 runs.
Series: England leads 1-0 with 2 matches to play.
Toss: Sri Lanka.
Umpires: Aleem Dar, India, and Billy Doctrove, West Indies.
Third umpire: Rod Tucker, Australia. Match referee: Javagal Srinath, India.