You can’t bowl there to Virat Kohli. Or there. No, not there either. Or, indeed, anywhere. On a bruising, pulsating, electrifying day of Test cricket, Sam Curran’s four wickets, an incredible spell of swing bowling by Ben Stokes and an outstanding sustained effort by James Anderson were all somehow cast into shadow by one man, and two innings.

Kohli’s resistance finally ended shortly after 6pm, carving Adil Rashid to gully with 149 runs to his name. There’s something magical about a good 149: think Botham at Headingley in 1981, Pietersen at Headingley in 2012, Gilchrist at Hobart in 1999 and again at Barbados in the 2007 World Cup final. This was an innings to sit alongside them; for its import and symbolism, if not always for its control. Because even as Kohli chiselled away England’s advantage, gilding his own legend as he did so, the home side could be forgiven for feeling a touch wistful, and more than a little rueful.

And this really was two innings in one. For the first half of his innings, Kohli dug in his heels and rode his luck. He eschewed the pull and the hook, filed away his big shots and his big ego, stationed himself six inches outside the crease and dared England to dislodge him. Anderson was swinging it all over the place. Dawid Malan dropped him twice in the slips. There were frothing LBW appeals, the odd shy at the stumps, numerous plays and misses and edges through the slips.

Virat Kohli made a brilliant century (Action Images via Reuters)

Then, as wickets continued to tumble at the other end, Kohli came alive. He farmed the strike and found the gaps, revealing his repertoire of strokes with the flourish of a travelling dictionary salesman. In so doing, he finally buried the notion that English conditions were his kryptonite, scoring more runs in a day than he did in the entire five-match series of 2014. The next-highest score was Shikhar Dhawan’s 26. By two parts will and one part skill, Kohli had kept India in the game. Alastair Cook’s 14-ball duck, falling to Ravi Ashwin off the final delivery of the day, may even have drawn India level.

For England, it was another deflating evening twist, coming after an inspired bowling performance in helpful conditions. Having added just two runs to their overnight 285-9 and seen Dhawan and Murali Vijay clatter 50 for the opening wicket, the 20-year-old Curran made his entrance in spectacular fashion, pinning Vijay LBW on review, bowling KL Rahul off the inside edge, tempting Dhawan into a loose drive to leave India 59-3.

And so enter Kohli, to a light flurry of boos, and with Ajinkya Rahane joining him it was fascinating to observe the different ways in which they attempted to negotiate the lavish swing. Rahane waited, watched, tried to play it as late as possible. Kohli advanced down the track, trying to get himself outside off stump and meet it early. Neither proved foolproof: Anderson found his edge several times, one of them clattering into the middle finger of Jos Buttler at gully and putting him out of most of the day. A quick trip to the hospital revealed no fracture.

Sam Curran shone with the ball (PA)

The clouds were closing in, and so were England. Now Stokes made his mark, picking up Rahane caught behind, cleaning up Dinesh Karthik for a duck. There remains a curiously tenacious notion that Stokes is an enforcing, hit-the-deck sort of bowler. In fact, he is perhaps England’s best exponent of swing besides Anderson, and in a terrific spell showed England just what they will be missing at Lord’s while he appears in court in Bristol.

Malan, already struggling for his place with the bat, was having a difficult day. If his flying effort to catch Kohli on 50 was no more than a half-chance, then his low chance off the same batsman on just 21 should really have been taken. Even if Cook dropped an even simpler catch off Hardik Pandya the very next ball, it is Malan’s first drop - which could have left India 100-6 - that will haunt England, especially if India pick up early wickets on Friday.

Still, England were getting through. Curran returned to trap Pandya LBW with a searing yorker, Anderson finally got off the mark by swinging one into Ashwin and collecting the top of his off-stump. Malan pouched Shami off the same bowler and raised his gaze to the clouds in relief. It had been a wonderful day’s cricket, the balance tilted pleasingly in favour of the ball, and yet the day’s pivot remained stubbornly in place.

Is batting last so bad? (REUTERS)

With eight wickets down and only the tail for company, Kohli now moved into one-day mode. Shielding Ishant Sharma and Umesh Yadav with a succession of bullet singles and hared twos, despatching Curran for two successive fours, charging down the pitch at Anderson, Kohli ended up facing 75 per cent of the remaining deliveries and scored 89 per cent of their runs.

Joe Root was partly culpable here. He perhaps bowled Anderson for too long in the morning, burned both reviews on marginal calls, kept Curran on despite the fact the ball had stopped swinging and Kohli had started. Most gravely, he delayed the introduction of tail-destruction specialist Rashid for too long, having given him just a solitary over before lunch. As if to prove the point, when finally introduced for his second over after 5pm, Rashid trapped Sharma plumb in front, even if Hawk-Eye showed the googly was sliding past the leg-stump.