Riyan Parag's unbeaten 56 and inspired bowling helped Rajasthan Royals defend 144 against Royal Challengers Bangalore to go top of the IPL table on Tuesday.

The 20-year-old Parag smashed 30 off the last two overs to steer Royals, who won the inaugural IPL title in 2008 under late Australian great Shane Warne, to a competitive total before pace bowler Kuldeep Sen took 4-20 to complete a 29-run victory in Pune.

Ravichandran Ashwin returned figures of 3-17 after Sen dismissed skipper Faf du Plessis (23) and Glenn Maxwell (0) in successive deliveries to put Bangalore in trouble at 37-3.

Ashwin rattled the middle order with his off-spin and a dramatic run out of Dinesh Karthik, who departed for six after a mix-up with Shahbaz Ahmed, took the wheels off the chase.

Sen returned to wrap up the Bangalore innings as they were bowled out for 115 in 19.3 overs.

"The top order is a trick we need to fix," Du Plessis said after his team's second straight loss and batting failure following their 68 all out last week in the IPL.

Virat Kohli scored only 9 runs after scoring two consecutive golden ducks in the previous matches

"You need someone in the top four to bat through and we haven't done that consistently. We tried changing the batting lineup today and we feel that they can try playing positively, they can't go into a shell."

A struggling Virat Kohli opened the innings for Bangalore and avoided a third straight golden duck but nearly got caught on the third delivery, with the ball falling short of the fielder at square leg.

Kohli, who has scored just 128 runs in nine matches, got off the mark on the fourth ball with a boundary and survived a few inside edges that missed the stumps but finally fell to Prasidh Krishna in the next over, for nine.

"Great players go through phases like this. We wanted him to get in straightaway so that he doesn't sit on the sidelines and think about the game," Du Plessis said of his team's star batter and former captain.

"He is a great player and we still back him to turn it around and hopefully it's around the corner. It's a game of confidence."

Earlier, Bangalore's Josh Hazlewood removed the in-form Jos Buttler for eight to push Royals on the back foot after fellow quick Mohammed Siraj struck twice in his opening two overs.

Buttler, who has hit three centuries this IPL season and is the leading batter with 499 runs, mistimed a pull to mid-on where Siraj took a stunning catch.

Skipper Sanju Samson attempted to hit back in his 21-ball 27 but was bowled by Sri Lankan leg-spinner Wanindu Hasaranga.

Royal Challengers Bangalore Mohammed Siraj appeals for the dismissal of Rajasthan Royals Devdutt Padikkal during the Indian Premier League 2022 match between Royal Challengers Bangalore and Rajasthan Royals, at Maharashtra Cricket Association Stadium, in Pune on 26 April, 2022

Hazlewood took 2-19 as Bangalore dried up the runs for Royals between overs 10 to 18, but Parag cut loose and survived a dropped catch on 32 to set up the team's sixth win of the season in eight matches.

Parag returned to the field to take four catches and named man of the match.