Desai and Keenan Vaz (40 batting; 6x4) stood in an unbroken 61-run sixth-wicket partnership to resist Bengal pacer Dinda's onslaught when bad light stopped play with Goa still trailing Bengal by 188 runs.
Dinda brilliantly led Bengal's bowling attack to finish with figures of 3 for 41 from his 15 overs after the young duo of B Amit and Kanishk Seth took the first two wickets.
With leaders Vidarbha through, the fight is among Bengal, Punjab and Himachal Pradesh in Group D.
Bengal are the frontrunners and they will make the cut if they pocket a first innings lead.
More From This Section
They could, however, be knocked out if they concede a lead, and Punjab record an outright win over Services.
Himachal have a tough road ahead and can only progress if Bengal and Punjab lose their respective matches, and they beat Vidarbha with a bonus point.
Garg gave the first breakthrough when he cleaned up Writtick Chatterjee (28) in the fifth over of the day and went on to end the dogged resistance of centurion Anustup Majumdar (119 from 208 balls; 15x4) as Bengal managed to add only 74 runs to their overnight total.
In reply, Goa stuttered as B Amit removed Sumiran Amonkar (12), while Seth dismissed Prathamesh Gawas (4) to leave the visitors struggling at 42/2 inside 17 overs.
Having being dropped twice on 41 and 43, Desai notched up his 13th half-century and along with Keenan, ensured they sign off the day without any further damage.
Brief scores:
Bengal 1st innings: 379 in 99.3 overs (Shreevats Goswami 139, Anustup Majumdar 119; Lakshay Garg 4/89, Heramb Parab 2/58, Felix Alemao 2/86).
Goa 1st innings: 191/5 in 62 overs (Amogh Desai 53 batting, Keenan Vaz 40 batting; Ashok Dinda 3/41).
Brief scores of other Group D matches:
Punjab 1st innings: 645/6 declared in 138 overs (Anmolpreet Singh 252 not out, Shubham Gill 129, Gurkeerat Mann 70, Jiwanjot Singh 64, Abhishek Gupta 60).
Services 1st innings: 130/4 in 33 overs (Rahul Singh 44 batting; MS Gony 2/25, Siddharth Kaul 2/54).
In Nagpur:
Himachal Pradesh 1st innings: 353 in 107.3 overs (Rishi Dhawan 71, Akash Vasisht 69, Sumeet Verma 66; Rajneesh Gurbani 6/113).
Vidarbha 1st innings: 237 for no loss in 67 overs (Faiz Fazal 125 batting, Sanjay Ramaswamy 104 batting).