The hosts reached lunch on 54 for none, in reply to India’s 329 all out, but then lost all ten 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 for two at stumps, putting themselves bang on course to reduce their series arrears to 2-1.
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 five for 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 which 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 on 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 as India lost their last four wickets for the addition of six runs. The edge of the bat was prominent throughout, even when Pant and Ravi Ashwin were taking India to 323 for six.
It was then that Broad (three for 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 flattened his middle-stump, and Anderson (three for 64) then dismissed numbers ten 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.