Joe Root consolidated his Lord's century, and then let Stuart Broad turn the screw against Sri Lanka, as England surpassed 400 for the first time in 14 Tests.
Root (152no) and Matt Prior's sixth-wicket stand was broken on 189.
But the young Yorkshireman was joined by the free-scoring Chris Jordan and then Broad, who dominated a partnership of 64 as the hosts raced from 344 for five to a lunchtime 473 for eight on day two of the first Investec Test.
Shaminda Eranga (three for 131) bounced out Prior and Jordan as England nonetheless posted the Test benchmark of 400 - something which has proved beyond them since March 2013, in Wellington.
Prior had a largely uncomfortable morning, after Sri Lanka switched tactics and went short at both him and Root with an uncompromising leg-side field in place.
The aggressive approach, in keeping with captain Angelo Mathews' pre-match promise, paid off after 45 minutes in which Prior could add only 10 to his overnight 76.
He did go past 4,000 Test runs in the process, before Eranga - round the wicket, with six leg-side catchers in place - produced a delivery Prior could only fend into the hands of short leg.
Root had a little early fortune, inside-edging Nuwan Pradeep past off stump and down to fine leg for four.
He dealt effectively with the short ball, though, including one resounding pull for four off Eranga.
Prior's dismissal brought England's third debutant to the crease, and Jordan soon looked at home - off the mark against Eranga with an all-run four through vacant mid off and then up the wicket to time slow left-armer Rangana Herath wide of mid on for a boundary.
He then hooked Eranga tantalisingly over the head of long leg and next ball brought up that elusive 400 in style with a back-foot punch past point for another four.
Eranga got his revenge in the same over, Jordan bailing out of another pull only to somehow loop a simple catch behind to Prasanna Jayawardene.
But Broad quickly joined in with a spree of five boundaries in nine balls - three in Nuwan Kulasekara's first over of the day.
His carefree attack continued too, bringing him 41 runs in the 50 stand, and allowing Root to tick over at his own pace - until Broad holed out pulling Pradeep (three for 105) - as England went above four-an-over for the innings.