Electing to bat, RCB rode on de Villiers' unbeaten 46- ball 89-run unconquered innings laced with as many as nine sixes and three fours to post a modest 148-4 after being reduced to 22-3 in 5 overs.
Chasing the target, Manan Vohra (34) and Amla (58) gave Punjab a flying start, sharing 62 off 35 balls for the opening wicket before Tymal Mills put the breaks by getting rid off the former in the sixth over.
New man Axar Patel (9) too didn't stay longer as after hitting a six off Iqbal Abdulla, he was flummoxed by Yuzvendra Chahal with a googly and ended up being clean bowled in the ninth over.
However, it didn't affect Punjab's runchase as Amla and skipper Glenn Maxwell never took their foot off the accelerator and kept dealing in boundaries to overhaul the target, reaching 150-2 in 14.3 overs.
More From This Section
Amla's unbeaten 38-ball 58-run innings was studded with four boundaries and three sixes, while Maxwell hit some lusty blows in his 22-ball 43-run innings as Punjab notched up their second win in IPL 10.
Earlier, RCB found themselves in a spot of bother early in the innings but de Villiers shared 46 runs off 49 balls with Mandeep Singh (28) for the 4th wicket to steady the innings.
Left-arm spinner Patel started the bowling attack for Punjab and he struck the first blow, dismissing opener Shane Watson (1) in the last ball of the first over itself. Looking to play a cut shot, Watson ended up dragging the ball on to his stumps.
However, other opener Vishnu Vinod (7) also tried to get into the act in the next over off Sandeep Sharma but he was cramped for room and ended up giving a simple catch to Maxwell at the long-on boundary.
In the next over, Aaron trapped Kedar Jadhav (1) infront of wicket as Bangalore were reduced to 22-3 in five overs.
After a few quiet overs, de Villiers plundered a six and a four to accumulate 13 runs off young left-arm seamer T Natarajan in the ninth over to help RCB reach 47 for 3.
In the 16th over, de Villiers slammed Aaron over mid-off to pick up his second six off the innings. The South African then smashed Marcus Stoinis over deep midwicket twice in the next over to bring up his fifty.
Stuart Binny then got into the act and clobbered a six and a four off Mohit before de Villiers blasted another six between the long-on and deep midwicket area.