Andre Russell's 13-ball 48 stole Virat Kohli's thunder as Kolkata Knight Riders chased down their target of 206 with five balls and five wickets to spare in the 17th match of the season to hand RCB their fifth straight loss.
Virat Kohli smashed 84 off 49 and with 5,110 runs, surpassed Suresh Raina's record of 5,086 runs to top the all-time batting chart in the IPL.
But the RCB are on the verge of the IPL's most dismal record held by Delhi Capitals (earlier Delhi Daredevils) of six straight losses in the 2013 season.
"The last four overs, the way we bowled, we deserve to lose. If you bowl with not enough bravery in the crunch overs, then you will always struggle against power-hitters like Russell," said Kohli.
"We cracked a bit under pressure, and that's the only story. Had we got 20-25 more, maybe it would have helped. But if you can't defend 75 in the last four overs, then I don't know if you can defend 100.
"It's been a disappointing season, but we have to believe we can turn things around."
With KKR needing 66 from the last four overs, Russell took the game away from Bangalore with one four and seven sixes.
"I am always confident. When I went out, DK was saying we need to watch a few balls. I was watching on the telly, and I wasn't thinking too much," said Russell.
"We needed to get 68 from 28 balls, and that doesn't happen everyday. We just had to put our bodies on the line. That's the nature of T20 cricket."
Earlier Kohli put together a 108-run second-wicket partnership with AB de Villiers (63 off 32) as Bangalore posted 205-3 in 20 overs.
Kohli took the attack to the opposition with nine fours and two big sixes in his 35th IPL fifty. De Villiers smashed five fours and four sixes.
Kohli was caught and bowled by Kuldeep Yadav before Sunil Narine had De Villiers caught at long off.
Marcus Stoinis played a crucial cameo of 28 not out to take Bangalore past the 200-run mark.