In a rain-curtailed match, RCB were required to score 81 from six overs after SunRisers scored a competitive 135 for three riding on half-centuries from Moises Henriques (57) and David Warner (52 no).
Aftre Chirs Gayle's initial blast of 35 from 10 balls, it was Kohli, whose 44 off 19 balls got them past finishing line as he hit a six off Bhuvneshwar Kumar to spark off wild celebrations in the RCB dug-out.
RCB are now at second position with 15 points from 13 games while SRH are at fourth place with 14 from 13 games.
Needing 10 off last four deliveries, Kohli hot a square drive followed by a steer bisected between point and gully before finishing off with a down the ground hit.
Chasing a stiff target of 81 from 6 overs, Gayle started by carting Dale Steyn for a boundary and six off the first two deliveries while skipper Kohli also hit the South African for a boundary as first over yielded 17 runs.
With wet outfield, the ball seemed difficult to grip as Gayle got his second boundary off a leading edge that went one bounce for bounbary with hapless bowler being Bhuvneshwar Kumar. Bhuvneshwar was then pulled by the 'Big Jamaican' for a boundary. It was followed by a six, four and six as RCB were well on course having pummelled 41 from first two overs.
If Steyn went for 17 in his first over, Bhuvneshwar's was worse with 24 coming in the form of three boundaries and two sixes -- all hit by Gayle.
However it was Henriques, who got into the act again as he dismissed Gayle for 35 off 10 balls, caught by Shikhar Dhawan at deep mid-wicket boundary. Henriques wasn't over yet as he removed AB de Villiers off the very next ball as Steyn took a well judged running catch near boundary line.
Skipper Kohli however kept RCB in the hunt as his big six off Karn Sharma off the fourth over brought the equation down to 23 off 12 balls.
The penultimate over bowled by Praveen Kumar saw him dismiss Mandeep Singh (1) off the first ball with a full toss that was hit straight down at deep square leg.
But it was Kohli again, whose pulled six off Praveen got the equation down to 13 from last over which he got for his team.