After Mumbai Indians skipper Sachin Tendulkar had put in the visitors, Malinga captured four wickets, including three in four balls, as the home side restricted Kings XI Punjab to 163 all out.
Barring the notable exception of Shaun Marsh, who struck a brisk 47-ball 57 in his first IPL III match, the Punjab top and middle-order batsmen capitulated again as the visitors settled for a below-par total.
Subsequently, Shikhar Dhawan (50 off 40 balls) and Saurabh Tiwary (31 off 23) came up with useful knocks as Mumbai cruised to 164 for six in 19.3 overs to consolidate their position atop the points table.
In contrast, it was the sixth defeat for the Punjab side in seven matches.
With Dhawan continuing his purple patch in the tournament, Mumbai’s chase got off to a flier with the openers raising 42 runs before a hushed silence descended on the Brabourne Stadium when Sachin Tendulkar (11) holed out to Irfan Pathan off Piyush Chawla.
Promoted in the batting order, Kieron Pollard (20 off 13 balls) played a characteristically brisk cameo, that included an effortless hitting of Chawla over long-off ropes.
Dhawan at the other end kept going. The left-hander had begun with back-to-back fours off Brett Lee and cut and drove with elan. Pollard fell to Irfan Pathan in the 10th over and then Dhawan, Ambati Rayudu (9) and Dwayne Bravo (8) fell in quick succession but Tiwary looked unstoppable.
Even his mis-timed shots sharted clearing the ropes as Tiwary imposed himself on the Punjab bowlers.
Tiwary eventually fell in the penultimate over but Mumbai Indians had no problems completing the formality with three balls to spare.
Earlier Malinga (4/22) and Zaheer Khan (3/34) shared seven wickets between them to restrict Kings XI Punjab to 163.
Malinga, who was egged on by the capacity crowd, fired out Irfan Pathan (18) and top-scorer Shaun Marsh (57 in 47 balls) off the fifth and last balls of his third over to be on a hat-trick.
Karan Goel, however, prevented the bowler from achieving the feat but was bowled off the second ball in Malinga’s fourth and final over. Some late order hitting by Piyush Chawla (22) helped the visitors cross the 160 mark.
Earlier in the innings, Malinga got rid of Manvinder Bisla to break the second wicket partnership with Marsh after Zaheer had given Mumbai a flying start by dismissing in-form opener Ravi Bopara with his second ball.
Australian Marsh, playing his first match, looked in good touch until Malinga bowled a superb yorker to completely beat Marsh to complete his third over on a high note. In between Marsh was also involved in a terrible mix-up that resulted in Mahela Jayawardene’s dismissal.
Score Board
KINGS XI PUNJAB: Ravi Bopara lbw Zaheer 1, Shaun Marsh b Malinga 57, Manvinder Bisla c Zaheer b Malinga 11, Mahela Jayawardene (run out) 20, Yuvraj Singh c Harbhajan Singh b Bravo 2, Irfan Pathan c Harbhajan b Malinga 18, Brett Lee c Pollard b Zaheer 3, Karan Goel b Malinga 1, Piyush Chawla (run out) 22, Vikramjeet Malik b Zaheer 6, Shalabh Srivastava (not out) 1. Extras (B-4, LB-6, W-10, NB-1) 21. Total (all out, 20 overs) 163.
Fall of wickets: 1-5, 2-40, 3-89, 4-92, 5-124, 6-124, 7-129, 8-133, 9-150.
Bowling: Ryan McLaren 3-0-29-0, Zaheer Khan 4-0-34-3, Lasith Malinga 4-0-22-4, Harbhajan Singh 4-0-26-0, Keiron Pollard 2-0-20-0, Dwayne Bravo 3-0-22-1.
MUMBAI INDIANS: Shikhar Dhawan c Marsh b Bopara 50, Sachin Tendulkar c Irfan b Chawla 11, Kieron Pollard c Bopara b Irfan 20, Saurabh Tiwary c Goel b Bopara 31, Ambati Rayudu c Yuvraj b Srivastava 9, Dwayne Bravo c & b Bopara 8, R Sathish (not out) 17, Harbhajan Singh (not out) 1. Extras (LB-2, W-15) 17. Total (for 6 wkts, 19.3 overs) 164.
Fall of wickets: 1-42, 2-82, 3-91, 4-122, 5-133, 6-158.
Bowling: Breet Lee 2.3-0-24-0, Shalabh Srivastava 4-0-27-1, Irfan Pathan 3-0-20-1, Vikramjeet Malik 2-0-21-0, Piyush Chawla 3-0-32-1, Karan Goel 1-0-7-0, Ravi Bopara 4-0-31-3.