They recorded their fifth consecutive win in this year's competition at the Dubai International Cricket Stadium, chasing down 125 to win with seven balls to spare.
RCB's star-studded batting line-up, who slumped to 5-4 in their last game, again stuttered as they were reduced to 26-4 in the fourth over.
Sandeep Sharma took three wickets and although Bangalore recovered to reach 124-8 and bat out their overs—which they failed to do on Saturday against Rajasthan Royals—it was not enough.
Chris Gayle marked his return to the IPL, after missing the first four games due to a sore back, with a bang as he smashed 20 off Glenn Maxwell's opening over.
However, young seamer Sharma got some movement off the seam to bowl him with his second delivery before getting a generous lbw decision to remove captain Virat Kohli.
After Mitchell Johnson had Yogesh Takawale caught behind, Parthiv Patel offered a routine catch to 'keeper Wriddhiman Saha off Sharma to leave RCB in disarray.
AB de Villiers and Yuvraj Singh put on 40 for the fifth wicket, but Rishi Dhawan removed the pair for 17 and 35 with Lakshmipathy Balaji bowling Albie Morkel (14) in between.
|Royal Challengers Bangalore: 124-8 (20 Overs)|
|Chris Gayle||b Sandeep Sharma||20||7||285.71||2||2|
|Parthiv Patel||c Wriddhiman Saha b Sandeep Sharma||2||7||28.57||0||0|
|Virat Kohli||lbw Sandeep Sharma||4||2||200.00||1||0|
|Yogesh Takawale||c Wriddhiman Saha b Mitchell Johnson||0||7||0.00||0||0|
|AB de Villiers||c Glenn Maxwell b Rishi Dhawan||17||15||113.33||2||0|
|Yuvraj Singh||c David Miller b Rishi Dhawan||35||32||109.37||3||1|
|Albie Morkel||b Lakshmipathy Balaji||15||14||107.14||0||1|
|Mitchell Starc||b Mitchell Johnson||8||17||47.05||0||0|
|Varun Aaron||NOT OUT||11||15||73.33||0||0|
|Ashok Dinda||NOT OUT||2||5||40.00||0||0|
|EXTRAS||(nb 1, lb 9)||10||EXTRAS|
The Bangalore tail only mustered 27 from the final 5.3 overs, but RCB were back in the game after reducing Kings XI to 40-3 in the eighth over.
Mitchell Starc took two fine catches at fine leg in consecutive Varun Aaron overs, including the removal of Australian compatriot Maxwell—the tournament's leading run scorer—for only six.
Virender Sehwag (32) and David Miller (26) then put on 45 for the fourth wicket, but emerging young leggie Yuzvendra Chahal removed them both in the 13th over.
That left 37 runs needed from the final seven overs, and skipper George Bailey steered his side home in conjunction with Dhawan.
|Kings XI Punjab: 127-5 (18.5 Overs)|
|Cheteshwar Pujara||c Parthiv Patel b Ashok Dinda||10||18||55.55||1||0|
|Virender Sehwag||c Parthiv Patel b Yuzvendra Chahal||32||26||123.07||4||0|
|Wriddhiman Saha||c Mitchell Starc b Varun Aaron||2||6||33.33||0||0|
|Glenn Maxwell||c Mitchell Starc b Varun Aaron||6||6||100.00||0||0|
|David Miller||c Parthiv Patel b Yuzvendra Chahal||26||20||130.00||4||0|
|George Bailey||NOT OUT||16||16||100.00||1||0|
|Rishi Dhawan||NOT OUT||23||22||104.54||3||0|
|EXTRAS||(nb 1, w 7, lb 4)||12|
Kings XI Punjab top the standings with 10 points and next face Mumbai Indians on Saturday.