After gaining a substantial first-innings lead, Madhya Pradesh moved to 204 for six and grabbed an overall advantage of 336 runs.
Karnataka managed to add only 23 runs to its overnight total, and was bowled out for 191 in the morning session. V. Vyshak (5) was cleaned up by pacer Kuldeep Sen, leaving K.V. Aneesh to bat with No. 11 Vidwath Kaverappa.
Aneesh (92), the only batter who showed fight, missed out on maiden First Class hundred when he was snapped up by Rajat Patidar at slip.
Karnataka avoided the follow-on, but a 132-run innings lead put Madhya Pradesh in the driver’s seat.
The visitor doubled down with a stoic performance with the bat, led by Himanshu Mantri (89 batting, 203b, 4×4). The opener blunted the Karnataka attack with a dead bat, leading Madhya Pradesh to an impregnable position.
Karnataka enjoyed some moments of success with the ball. Left-arm spinner Shikhar Shetty removed Yash Dubey leg-before, before fast bowler Vidyadhar Patil took out Shubham Sharma (32) and Rajat Patidar (0) in the same over. Danger man Venkatesh Iyer (1) chopped one from Shreyas Gopal onto the stumps.
At 99 for four, Karnataka harboured slim hopes of making a comeback.
Himanshu, however, stood firm to bat Karnataka out of the contest.
The home team suffered an injury scare when Karun Nair suffered a split webbing on his left hand which required five stitches.
A decision on the availability of wicketkeeper K.L. Shrijith, who injured his finger but came out to bat, will be taken on Sunday morning.
Madhya Pradesh was dealt a big blow as well, when all-rounder Saransh Jain retired hurt after being struck by a rising delivery.
Table-topper Karnataka will have to show tremendous character on the final day to escape with a draw.
The scores: Madhya Pradesh — 1st innings: 323.
Karnataka — 1st innings: Mayank Agarwal c Sagar b Aryan 0, K.V. Aneesh c Patidar b Saransh 92, Devdutt Padikkal lbw b Saransh 0, Karun Nair run out 12, K.L. Shrijith c Himanshu b Kuldeep 7, Abhinav Manohar st. Himanshu b Saransh 14, Shreyas Gopal lbw b Saransh 41, Shikhar Shetty lbw b Aryan 5, Vidyadhar Patil b Sagar 4, V. Vyshak b Kuldeep 5, Vidwath Kaverappa (not out) 8; Extras (lb-3) 3; Total (in 64.1 overs): 191.
Fall of wickets: 1-2, 2-5, 3-19, 4-39, 5-60, 6-142, 7-155, 8-162, 9-172.
Madhya Pradesh bowling: Kartikeya 10-1-45-1, Aryan 12-1-35-2, Saransh 20.1-4-42-4, Kuldeep 12-1-45-2, Sagar 10-3-21-1.
Madhya Pradesh — 2nd innings: Yash Dubey lbw b Shikhar 17, Himanshu Mantri (batting) 89, Shubham Sharma b Vidyadhar 32, Rajat Patidar b Vidyadhar 0, Venkatesh Iyer b Shreyas 1, Akshat Raghuwanshi b Shikhar 13, Saransh Jain (retd. hurt) 15, Sagar Solanki lbw b Vidyadhar 13, Aryan Pandey (batting) 13; Extras (b-5, w-6): 11; Total (for six wkts. in 71 overs): 204.
Fall of wickets: 1-38, 2-96, 3-96, 4-99, 5-123, 6-179.
Karnataka bowling: Kaverappa 13-4-28-0, Vidyadhar 16-5-39-3, Vyshak 11-1-39-0, Shikhar 11-0-41-2, Shreyas 20-3-52-1.
