Riding on right arm leg-spinner Shreyas Gopal's five-wicket haul, Karnataka beat Uttar Pradesh by 92 runs to enter into the semi-finals of the Ranji Trophy at Chinnaswamy Stadium in Bangalore on Saturday.
Chasing a target of 333, UP were bundled out for 240 in 65.3 overs.
Batting first, Karnataka had scored 349 all out in the first innings with centuries from Robin Uthappa, Karun Nair and Chidambaram Gautam.
In reply, UP declared their first innings at 221 for nine and their bowlers came back strongly to skittle Karnataka all out for 204 in their second innings.
With the match evenly poised at the resumption of the fourth day on Saturday, Karnataka bowlers wrested the initiative from the visitors as they used the early morning conditions to their advantage, picking up five wickets to put UP almost out of contention.
But Eklavya Dwivedi (33) and Piyush Chawla (44) put on a solid 70-run partnership for the seventh wicket to give Karnataka some anxious moments by keeping UP just 125 runs in sight of a victory.
The 20-year-old Gopal, however, had the last laugh as he sent home the first innings half-centurion Chawla, caught by Karun Nair, shattering UP's hopes.
Gopal scalped five wickets for 59 in the second innings, unlike in the first innings, where he went wicket-less after conceding 30 runs.
Earlier, resuming at an overnight total of 55 for one, UP lost an early wicket in the form of Tanmay Srivastava, who added 21 runs to his overnight score of 23 before giving away his wicket to R Vinay Kumar.
Much was expected of Srivastava as he had 300-odd runs behind him this season with two centuries to his credit.
Mohammad Kaif, who had only 217 runs from eight innings with not even a half century, was the next batsman out for naught after he gave a catch to Vinay off Abhimanyu Mithun's bowling, leaving the visitors reeling at 86 for three.
Gopal then came into the act and scalped the next two wickets of Ali Murtaza (29) and Prashant Gupta (19). Mithun followed it up with the prized wicket of Parvinder Singh (8), who had scored a brilliant 92 in the first innings.
In the post-lunch session, Gopal and Vinay polished off UP's tail by claiming the last four wickets in quick succession.
Vinay finished with two wickets in the second innings for his match haul of five for 121.
Mithun was adjudged man of the match for his seven for 141. In the first innings he had claimed four for 70.
Karnataka will now take on Punjab in the semi-final to be played in Mohali from January 18-22.
Karnataka 1st innings: 349
Uttar Pradesh 1st innings: 221 for nine decl
Karnataka 2nd innings: 204
Uttar Pradesh 2nd innings (overnight 55 for one)
Tanmay Srivastava c Pandey b Vinay Kumar 44
Mukul Dagar c Uthappa b Gopal 23
Ali Murtaza b Gopal 29
Mohammad Kaif c Vinay Kumar b Mithun 0
Prashant Gupta c Gautam b Gopal 19
Parvinder Singh b Mithun 8
Eklavya Dwivedi c Vinay Kumar b Mithun 33
Piyush Chawla c Nair b Gopal 44
Amit Mishra c Gautam b Gopal 4
Ankit Rajpoot b Vinay Kumar 14
RP Singh not out 3
Extras: (B-8, LB-9, NB-2) 19
Total: (all out; 65.3 overs) 240
Fall of wickets: 1-53, 2-85, 3-86, 4-125, 5-134, 6-138, 7-208, 8-213, 9-222.
Bowling: R Vinay Kumar 21.3-4-72-2, Abhimanyu Mithun 20-3-71-3, Robin Uthappa 1-0-2-0, Shreyas Gopal 16-1-59-5, Abrar Kazi 3-2-7-0, Manish Pandey 4-1-12-0.
Image: Abhimanyu Mithun