The hosts reached lunch on 54-0, in reply to India’s 329 all out, but then lost all 10 wickets in a session – for the third time since October 2016 – to be bowled out for 161 in 38.2 overs.
India duly took their commanding lead to 292 after reaching 124-2 at stumps, putting themselves bang on course to reduce their series arrears to 2-1 after successive losses.
Pandya’s glory day came from left-field as he took four wickets for eight runs off 11 balls on the way to a career-best 5-28 in a match dominated so far by exaggerated swing.
It was a head-scratcher that no England wickets fell in 40 awkward minutes under heavy cloud cover before lunch, but the collapse that followed was spectacular.
Openers Alastair Cook and Keaton Jennings fell to successive deliveries, from different bowlers, the first two of debutant wicketkeeper Rishabh Pant’s five catches.
Cook had just been dropped at first slip off Ishant Sharma when he edged behind two balls later, and then Jennings departed to one slanted across him by Jasprit Bumrah.
Ishant struck again when he had Ollie Pope caught down the leg-side, but it was the introduction of fourth seamer Pandya that sent England unexpectedly into terminal decline.
To the first delivery after drinks, Joe Root edged low to second slip and trudged off with evident disappointment after the third umpire confirmed the ball carried.
There was one success for Mohammed Shami, with Ben Stokes nicking the ball to KL Rahul at second slip again in the Durham all-rounder’s first innings since being acquitted of affray last Tuesday.
Then Pandya took over.
He saw off Jonny Bairstow via another Rahul catch and was on a hat-trick after Chris Woakes gloved a hook for a brilliant take by Pant and Adil Rashid edged a drive.
He then had to wait four balls to pin Stuart Broad for a duck.
Only a leading-edge miscue just over the head of cover from top-scorer Jos Buttler scrambled England past the follow-on mark at the start of a last-wicket stand of 33 with James Anderson.
Tea had to wait until Buttler was last out, slogging Bumrah to deep mid-on, and India could set about batting England into evening oblivion.
They lost Rahul in the cause, on the attack against Stokes when he was bowled off his pads to end an opening stand of 60, and Shikhar Dhawan was stumped off a Rashid googly six short of his 50 as the tourists nonetheless extended their yawning advantage.
A rain-shortened morning session had been pretty manic too.
India lost their last four wickets for the addition of six runs, but Cook and Jennings gave England’s reply a start of misleading promise.
The edge of the bat was prominent throughout, even when Pant and Ravi Ashwin were taking India to 323-6.
It was then that Broad (3-72) had the left-hander edging an attempted drive on to his leg-stump, and it was no surprise that the India tail then quickly folded.
Ashwin had ridden his luck, but it ran out when Broad produced a memorable inswinger to flatten his middle-stump, and Anderson (3-64) then dismissed numbers 10 and 11 in successive deliveries.
It felt like the preface to a spot of bother before lunch for England’s openers, but with a little good fortune on their side, as Shami and Bumrah were slightly wayward, all too briefly they defied expectations.