Tillakaratne Dilshan and AB de Villiers put on an unbroken 122-run stand off 50 balls Monday as Royal Challengers Bangalore defeated Rajasthan Royals by 46 runs in the Indian Premier League. Dilshan scored 76 off 58 balls and de Villiers smashed five sixes for 59 from 23 balls to help steer Bangalore to 189-3. Left-arm spinner Prabhu Appanna polished off Rajasthan's top order by taking 4-19 to restrict the home team's chase to 143-7. Rajasthan had kept Bangalore in check at 67-3 in the 12th over before Dilshan and de Villiers cut loose, with seamer Siddharth Trivedi conceding 44 runs off his four overs. Bangalore had a setback when West Indian batsman Chris Gayle fell sick just before the innings was due to start, forcing Virat Kohli to open. Kohli holed out in the deep in the fourth over. Left-arm spinner Brad Hogg then struck twice in quick succession, including Gayle, who came in at No. 4 but fell leg before wicket for 4. Rajasthan lost the plot as Dilshan and de Villiers struck boundaries at will through some superb strokeplay. Rajasthan captain Rahul Dravid hit eight fours for 58 off 42 balls, but his team lost wickets regularly before its first home defeat in four matches. It was also sweet revenge for Bangalore, which lost by 59 runs to Rajasthan earlier this month in which Ajinkya Rahana scored a century. Rajasthan has eight points from four wins and four defeats. Bangalore has eight points from four wins and three losses.