Amir finished with 3 for 7, Wasim took 3 for 18 and Mir 3 for 24 as Islamabad were bowled out for 82 in 15.2 overs after they were set a modest 127-run target. Karachi had made 126 in 19.4 overs.
Last year, Islamabad had defended 132 against Karachi, but in this play-off never looked set after losing Dwayne Smith (8) and Brad Haddin (0) in Amir’s second over of the innings.
Wasim and Mir then got into the act. Wasim, the left-armer, took the key wickets of Misbah-ul-Haq (13), Shane Watson (8) and Nicolas Pooran (1) to leave Islamabad tottering at 70 for 6.
Mir, the legspinner, removed Shadab Khan for 1 and ended the resistance of opener Asif Ali, caught behind to bring Karachi within sight of victory.
Earlier, Rumman Raees, the left-arm paceman, rocked Karachi with figures of 4 for 24 after they were sent in to bat.
Karachi’s start was abysmal. Chris Gayle and Babar Azam played 13 dot balls at the start, leaving them only 18 overs in which to score.
Azam knocked four boundaries in the third over bowled by Mohammad Irfan, but once he fell for a 21-ball 25, the innings never got the impetus it needed. Rumman bowled Gayle to end another miserable league for the big-hitting West Indian.
Shoaib Malik (25 off 23 balls with two boundaries) and Ravi Bopara (15 off 15) were too slow as 100 was reached as late as the 15th over.
Wasim hit a six and looked threatening, but Rumman dismissed him, Kieron Pollard and Amir to end all hopes of a bigger total.
Karachi Kings will now meet Peshawar Zalmi in the last play-off in Dubai on Friday. The winner will face Quetta Gladiators in Sunday’s final.