Batting first, half centuries from skipper Sachin Tendulkar and Ambati Rayudu helped them score a competitive 159 for five in 20 overs. The MI bowlers then did a fine job in restricting the visitors to 136 for eight despite valiant effort from Shaun Marsh who scored 61 off just 47 balls.
Barring a fine innings from Marsh, who struck eight fours, and his 72-run second wicket partnership in 60 balls with opener Paul Valthaty (33 in 38 balls), there was little of note in the Kings XI chase resulting in their fourth defeat in seven matches.
For home team, Harbhajan Singh - who opened the attack - grabbed two for 25 along with Lasith Malinga (two for 19) and Munaf Patel (two for 18).
Man of the match Kieron Pollard, who made a brisk 20 in 11 balls and took two catches, and Andrew Symonds also grabbed a wicket each.
Earlier, asked to bat first Tendulkar and Rayudu added 95 runs in 72 balls for the second wicket to guide MI to a winning score.
While Rayudu was the more aggressive of the duo and got his runs in 37 balls with eight fours and one six, Tendulkar struck a six and three fours in his 45-ball essay.
Both were caught in the deep trying to give a charge to the KXIP bowlers.
Later, Kieron Pollard, who has hardly got a chance to bat in earlier matches, made a quick-fire 20 with two sixes and a four. Rohit Sharma made a quick 18 in 11 balls before falling off the penultimate ball.
Andrew Symonds (4) remained unconquered at the end with T Suman (0) who did not face a ball.
For the visitors, leg spinner Piyush Chawla and medium pacer Ryan Harris grabbed two wickets each while left-arm slow bowler Bipul Sharma accounted for the other wicket.
When Punjab chased, Mumbai too, like their rivals had done, commenced the bowling with Harbhajan Singh and the move succeeded. The offie trapped Gilchrist leg before when the left hander tried to sweep the bowler.
The fifth ball strike with only one run on the board put Kings XI on the back foot, but the home team suffered a setback when Rayudu was injured while fielding, appearing to have twisted his right knee. He later came back to keep wickets after first-choice stumper Davy Jacobs suffered a thumb injury and had to leave the field.
Shaun Marsh struck the first boundary of the innings by clipping Malinga off his toes and then punched the Lankan bowler through the covers off the very next delivery for his second four.
Valthaty was lucky to see his leading edge not held at point by Munaf Patel off Abu Nechim Ahmed when on three in a score of 16 for one.
Punjab could make only 24 in the first six overs Power Play period. The visitors reached 50 in 53 balls when Valthaty clouted part-time spinner T Suman over the straight field for his first six.
The right-hander clobbered Andrew Symonds, in his first over of the tournament, for another six over the straight field before being caught just inside the boundary line by a running Kieron Pollard off the very next ball when he tried to repeat the shot.
The second wicket partnership between Valthaty, who faced 38 balls, and Marsh produced 72 runs in 60 balls.
Mumbai struck another blow six runs later to pack off David Hussey through a brilliant catch by Rohit Sharma diving forward when the Australian mistimed an aerial shot off Munaf Patel to reduce the visitors to 79 for three.
Dinesh Karthik was trapped leg before by Pollard as he tried to shuffle across and turn to leg which left Kings XI at a difficult 83 for four. Three wickets had gone down for 10 runs in 28 balls.
A partnership of 30 runs in under three overs between Marsh, who was batting beautifully, and Abishek Nayar (14 in 9 balls), brought raised visions of an improbable win before Harbhajan send back Nayar with Symonds taking a good catch at cover. It was the offie's second wicket of the game.
Malinga came back to york Bipul Sharma comprehensively to leave Kings XI at a seemingly hopeless 116 for six and the match was as good as over with the departure of Marsh, caught by Tendulkar pulling Malinga, in the next over followed by that of Ryan Harris three balls later.
Brief scores
Mumbai Indians 159 for 5 (Rayudu 51, Tendulkar 51)
Kings XI Punjab 136 for 8 (Marsh 61, Valthaty 33)
Results Mumbai Indians won by 23 runs
MOM Kieron Pollard (Mumbai Indians)
Points Mumbai Indians 2, Kings XI Punjab 0