Chennai Super Kings looked on course for victory at the halfway point, well-placed on 90/1 in 10 overs, with two well-set batsmen, Shane Watson and Ambati Rayudu, out in the middle.
But that was the just the start of their collapse as Kolkata Knight Riders staged a remarkable comeback with the ball.
Pat Cummins and Sunil Narine built some pressure with a couple of tight overs before pacer Kamlesh Nagarkoti made the breakthrough with Rayudu's wicket.
Rayudu tried to break free but only holed out to the long-on fielder to perish for 30.
In the next over, Narine dealt CSK's hopes a huge blow by claiming Watson, who had stroked 50 from 40 balls.
Those two quick wickets took the wind out of CSK's sails and they struggled thereafter.
KKR's bowlers conceded just 20 runs in five overs while taking two wickets between the 11th and 15th over to turn the game on its head
CSK were reduced to 110/3 in 15 overs, needing 58 from the last five overs, but the lower order, including Mahendra Singh Dhoni, were unable to go after the bowlers as they lost the match by 10 runs.
Star Performer: Tripathi, knight in shining armour
PICS: Bowlers earn KKR victory as Super Kings choke
IPL 2020: Who tops MVP list so far?
IPL 2020, Week 2: All the Hits & Misses
Angry Dhoni slams CSK batsmen after losing to KKR