The 19-year-old Afghan first smashed an unbeaten 34 off just 10 balls and then took three wickets for 19 runs in his four overs and two catches.
Sunrisers Hyderabad's Afghan teenager Rashid Khan provided late fireworks with the bat and then returned with the ball to snub Kolkata Knight Riders's chase and guide his team to a 14-run victory and a place in Sunday's Indian Premier League final, on Friday night.
The 19-year-old smashed an unbeaten 34 off 10 balls to guide Hyderabad to 174 for seven after they were put in to bat first in the playoffs at Eden Gardens.
Kolkata seemed to be cruising in their chase before Rashid left them spellbound with his fast leg-spinners, claiming three for 19 in his four overs.
If that was not enough, he was also involved in the run-out of Nitish Rana and then took two catches under pressure while fielding close to the boundary rope in the final over.
Twice champions Kolkata could only manage 160 for nine in their chase, much to the disappointment of a packed home crowd.
"Always felt @rashidkhan_19 was a good spinner but now I wouldn't hesitate in saying he is the best spinner in the world in this format," India's former batting great Sachin Tendulkar said on Twitter in a rich tribute to the youngster.
"Mind you, he's got some batting skills as well. Great guy."
Hyderabad topped the table after the group stage but had lost their last four matches, including the qualifier to Chennai at Mumbai's Wankhede Stadium on Tuesday.
They will have a chance to avenge that loss at the same venue in the final when they meet the twice champions, led by former India captain Mahendra Singh Dhoni.
Sunil Narine had given Kolkata a strong start with his 26 off 13 balls and with Australian Chris Lynn also in good form, they looked in control.
But things changed quickly after Rashid's throw from the deep found Rana short after the batsman had slipped while turning for the second run.
Robin Uthappa then found his stumps shattered by Rashid while trying to play a reverse sweep to the leg-spinner.
Kolkata lost captain Dinesh Karthik cheaply to left-arm spinner Shakib Al Hasan before Rashid dismissed Lynn for 48 and the dangerous Andre Russell.
Hyderabad's innings appeared to be heading for a below-par total when big-hitting batsman Yusuf Pathan departed, leaving them tottering on 138 for seven with 11 deliveries left.
But the 19-year-old Rashid then smashed four sixes and two boundaries in his knock as Kolkata fast bowler Prasidh Krishna conceded 24 runs in the final over of the innings.
Openers Wriddhiman Saha and Shikhar Dhawan had given the 2016 champions a brisk start with a partnership of 56 but left-arm wrist spinner Kuldeep Yadav dismissed Dhawan and then skipper Kane Williamson in his first over to peg Hyderabad back.
Kolkata's spinners Sunil Narine and Piyush Chawla made run-scoring difficult for the Hyderabad batsmen on a sluggish pitch before Rashid's late assault.