To win matches, you need a good combination of the best players, captaincy and team effort. Franchises such as RCB are having good players, but their team bonding is not up to the mark. On the other hand, KXIP is one of the franchises which excels in team bonding.
That is the key to any teams success, I also think a strong captain who can control players egos is also the key to success. When the players are out there playing for the team and not for them self then that is when we see teams win. This might be one of the problems we have in the IPL as players are paid big sums of money to perform so they think mostly about their own performance rather then play for the team.