Alastair Cook fell six runs short of a triple century before England declared on 710-7, their third highest ever total, in the third Test against India at Edgbaston.
Cook, on 182 overnight, had for much of the third day looked on course to become the first Englishman to make 300 since his mentor Graham Gooch's 333 against the same opponents at Lord's in 1990.
Having spent 12-and-a-half hours at the crease, he was within one blow of the landmark when his square drive at a wide delivery from Ishant Sharma ended in the hands of Suresh Raina, who took the catch after moving in off the backward point boundary.
The Essex left-hander's career-best 294, spanning 545 balls and featuring 33 fours, is the sixth highest Test score by an Englishman.
He received support from Eoin Morgan, who contributed 104 - his second Test hundred - as England, on 456-3 at the start of the day, steadily built a huge lead despite a couple of delays for bad light.
Tim Bresnan chipped in with a quickfire 53 not out, before Cook's demise in the evening session prompted Andrew Strauss to declare with an advantage of 486.
India, who have failed to pass 300 in five innings in the series, made a woeful start to their second innings as Virender Sehwag edged a big drive to Strauss at first slip in James Anderson's opening over to complete a king pair, dismissed first ball in both innings.
India closed on 35-1, still 451 behind, and England, who hold a 2-0 lead after dominant wins at Lord's and Trent Bridge, have two days to press for the series-clinching win that would also guarantee they replace India at the top of the Test rankings.
Cook's fourth-wicket stand with Eoin Morgan realised 222, and did not falter even when England's unhurried progress was rudely interrupted by a combination of bad light and a mid-afternoon power cut.
Cook was still two runs short of his previous-best 235 not out when umpires Simon Taufel and Steve Davis surprisingly took the players off, to the evident bemusement of a sell-out crowd.
Floodlights are in use for this series, but were inoperable when needed as heavy clouds rolled over Birmingham and the tourists prepared to recall fast bowler Sharma to their attack.
After an unscheduled and bizarre 15-minute break, the umpires brought the players back out despite no discernible improvement in either the light, or the floodlights.
It took almost another hour for the bulbs to fire up properly again. But there was barely a flicker of any malfunction from the inexhaustible Cook, who remained utterly constant as England's sheet anchor.
It took him until the 45th over to register his second boundary of the day, a square-drive off leg-spinner Amit Mishra.
Morgan was playing a slightly more adventurous game but still needed 187 balls to record his second Test century, as England took no chances in awkward batting conditions under constant cloud cover.
By contrast, after Morgan had slapped a catch to cover from Suresh Raina's
off-spin, Ravi Bopara back-cut Mishra for a four from only the fifth ball he faced to bring up England's 600.
Sadly for Bopara, given a chance here in the temporary absence of the injured Jonathan Trott, he was to fall for only seven when he missed a Mishra leg-break and went lbw on the forward-defence.
Matt Prior was the next candidate to play a more attacking game around Cook.
But he too fell cheaply to Mishra, mis-sweeping to be well-held by a tumbling Sachin Tendulkar at long-leg, the third England wicket for the addition of only 17 runs.
Cook became responsible for the second-longest individual England innings in history, behind only Len Hutton during his all-time national record 364 against Australia at the Oval in 1938.
Back in the present, it is a measure of the hosts' superiority so far this summer that they now have eight century stands in the book - to India's one.
They did not have it especially easy on Friday, however, despite the embarrassingly one-sided statistics on the scoreboard.
The admirable Praveen Kumar, and Shantha Sreesanth, regularly found swing - and gave relatively little away - and as India spurned a third new ball for more than an hour, Mishra (3-150) kept plugging away.
But none could stop Cook, until his solitary misjudgment, which ended a partnership of 97 with Bresnan - whose 72-ball 50 was brought up with a six bludgeoned over long-on off Sharma to also hoist the home side above 700.