Royal Challengers Bangalore sneeked into the play-offs after Mumbai Indians broke Delhi Capitals' heart with a five-wicket win in their last IPL match on Saturday.
Already out of contention, MI played partypoopers as they first restricted DC to 159 for 7 with Jasprit Bumrah snapping three wickets and then returned to overhaul the target in 19.1 overs to knock the 2020 finalists out of the tournament.
While Ishan Kishan (48) and Dewald Brevis (37) kept MI in the hunt, it was Tim David's 11-ball 34-run cameo that brought the five-time champions back into the chase.
Tilak Varma also chipped in with a crucial 17-ball 21.
With MI at 95 for 3 in 14.3 overs, DC skipper Rishabh Pant made a strategic blunder as he refused to go for DRS after David nicked the first ball of his innings but the onfield umpire didn't give him out.
It came back to haunt DC as David slammed fours and sixes at will to bring down the equation to 15 off 14 balls. Ramandeep then provided the finishing touch with a six-ball 13.
DC finished with 14 points to remain in the fifth spot, while RCB joined Gujarat Titans, Rajasthan Royals and Lucknow Super Giants into the play-offs with 16 points.
Defending the total, left-arm seamer Khaleel Ahmed looked in good rhythm as he bowled a sensational first two overs, conceding just 2. He bowled full outside off-stump to trouble the openers, mainly Rohit Sharma (2).
Anrich Nortje finally put an end to Rohit's struggle with the MI skipper chipping one to mid-on.
Ishan and Brevis then added 51 runs off 37 balls but Kuldeep Yadav (1/33) broke the partnership with David Warner taking a fine catch to get rid of the former.
Brevis took on the attack to the opposition and smashed two sixes and a four off Kuldeep, who could have had him but skipper Pant dropped a sitter in the 12th over to add to the agony of the bowler.
However, Brevis dragged one on to his stumps as MI slipped to 95 for 3 in the 15th over.
After that it was a David show as hit a six over deep mid-wicket off Shardul Thakur.
David and Varma hit a four a six to accumulate 13 runs off the 16th over. Khaleel then conceded 17 with David smashing a four and a six.
Needing 29 from 18 balls, David clobbered Shardul for two maximums and also completed the fifty run stand to reduce the equation to 15 off 13 balls.
Thakur finally removed David, who hit a full toss to Prithvi Shaw at extra cover but by then it was too late.
Earlier, opting to field, MI bowlers, led by Bumrah (3/25) left DC tottering at 50 for 4 in 8.4 overs but Rovman Powell and skipper Pant (39 off 33 balls) shared 75 off 44 balls to ressurect the innings and take them to a decent total.
Daniel Sams (1/30) and Riley Mereditch (0/9 in 2 overs) bowled well as did the spin duo of Mayank Markande (1/26) and Hrithik Shooken (0/34).
Ramandeep Singh (2/29 in 2 overs) also managed to scalp two wickets.
Back after recovering from a bout of typhoid, Shaw (24) looked in good touch but Sams produced the first breakthrough when he had Warner caught by Bumrah at short third man.
Bumrah then turned the heat as he first found the outside edge of Mitchell Marsh with Rohit taking a low catch and then returned to sent back Shaw with an unplayable bouncer.
It was time for Markande to shine next as Sarfaraz Khan nicked one outside the off-stump to see DC slump to 50 for four in ninth over.
With Shokeen and Markande bowling in tandum, DC scored their lowest total at the halfway mark this season — 55 for four.
While Pant dropped anchor, Powell exploded in the 12th over, smashing Shokeen for two maximums and a four to pick up 20 runs.
Markande was next in line as Powell deposited him over long-off, before MI conceded a bye four.
Meredith bowled a tight over, conceding just two.
Ramandeep then bowled three wides and conceded a six and a four before taking Pant's wicket in his final ball.
Powell then pulled Bumrah over deep square leg, while Axar Patel (19 not out) produced a timely six off Sams.
However, Bumrah produced his trademark toe-crushing yorker to disturb the timbers of Powell and nearly had another wicket, only if Brevis could have held on to a one-handed catch.
Ramandeep took a wicket in the final over which yielded 11 runs.