RCB captain Virat Kohli sent the opposition in after winning the toss and his bowlers responded brilliantly by dismissing the Royals for just 117 in 19.4 overs on a Chinnaswamy track which appeared to be batting-friendly.
Pacers R P Singh (3/13), R Vinay Kumar (3/18) and Ravi Rampual (2/19) did most of the damage during the Royals innings as the visitors slumped to their lowest total in this IPL season so far.
The home side stuttered for a while in their chase with three wickets falling in quick succession before overhauling the small target easily with 13 balls to spare as they reached 123 for three in 17.5 overs to hand the Royals their second loss in six games.
Gayle ended the match in style with a huge six to remain not out on 49 which he made from 44 balls.
With today`s win, which put brakes on the fine run of the Royals in the tournament, the RCB jumped to joint top with Sunrisers Hyderabad with 10 points from seven matches while the Royals remained on eight points from six matches.
Gayle played a sensible innings to anchor RCB to victory after in-form batsmen Virat Kohli (1) and A B de Villiers (7) were out cheaply. He curbed his aggressive instinct and hit just four fours and a six in his knock.
Young Saurabh Tiwary gave an able company to his senior partner with a 29-ball unbeaten 25 as the duo stitched 59 runs from 8.5 overs for the unbroken fourth wicket.
RCB began the chase on a solid note with Gayle and Tillakaratne Dilshan (25) putting on 53 runs before it was broken in the seventh over. Shane Watson induced an edge to Dilshan`s bat for Arun Karthik to take an easy catch behind the wicket. Dilshan`s 25 from 22 balls contained five boundaries.
The home side stuttered for a while with Kohli out for a paltry score after a long time as James Faulkner`s slow delivery in the next over took the edge of RCB captain`s bat before crashing into the wickets.
Another in-form batsman A B de Villiers followed his captain to the dressing room eight balls later with Ajit Chandila diving to his left to take a fine low catch at mid off to hand Watson his second wicket of the day.
RCB lost momentum after the three quick wickets but still well-placed at 67 for three at the half-way mark with the asking rate just just over five an over from the remaining 10 overs.
Tiwary struck a six off Chandila in the 15th over to take RCB past 100 mark and then Gayle ended the chase with a towering six off Siddharth Trivedi.
Earlier, the Royals succumbed to an impressive bowling display by RCB as they were shot out for 117 in 19.4 overs.
The Royals had the worst possible start as opener Shane Watson (6) and Ajinkya Rahane (14) were sent packing with just 26 runs on the board. Dravid (35 off 31 balls), however, steadied the innings with Stuart Binny (33 off 20 balls) with a 40-run stand for the third wicket from 9.5 overs.
The visitors, however, failed to maintain as they suffered a batting collapse in the second part of their innings. The visitors lost wickets in quick succession and from 97 for three in the 15th over, they were reduced 112 for eight in 18 overs and then were all out for 117 in 19.4 overs.
The Royals suffered a jolt when Dravid could not time a lofted shot and was holed out to Ravi Rampaul at long on in the 15th over. Dravid hit five boundaries in his 31-ball knock and the Royals were 97 for four when he was out.
Dravid`s wicket triggered a batting collapse as Hodge (13 off 17 balls) edged one to wicket-keeper Arun Karthik off Vinay Kumar soon after.
James Faulkner (3), Dishant Yagnik (5), S Sreesanth (0), Shaun Tait (1) and Siddharth Trivedi (3) could not do much as RP Singh and Vinay Kumar got wickets in quick succession.