Resuming his innings on 117 with Vidarbha at 285 for one, Ramaswamy got past his previous best of 161, scored in their season opener against Punjab. Along with Aditya Sarwate (89), Ramaswamy helped them reach a mammoth 499 in their first innings.
Bengal replied shakily as they were 89 for three with skipper Manoj Tiwary (36 batting) and Kanishk Seth (1 batting) at stumps on day two, still 260 runs shy of avoiding follow- on.
Abhimanyu Easwaran's lean patch continued as he was out for a duck in the fourth ball of the innings, as Bengal lost their first wicket for no run.
After a temporary resistance, Bengal lost two wickets for 43 with Sudeep Chatterjee (15) and Abhishek Raman (27) going in succession.
Earlier, Vidarbha lost their first wicket Wasim Jaffer (22) in the first over of the day, but Ramaswamy stayed calm to anchor the innings.
He got fine support from No 7 batsman Sarwate, who showed grit to resume his innings on 60 after being hit hard on his helmet by a rising bouncer from debutant pacer Ishan Porel.
Batting on 60, Sarwate lost his balance and fell after being hit by a rising delivery in the post-lunch session.
He batted for next three balls only to be taken off to the dressing room. To everyone's surprise, he resumed his innings and added 29 runs before being dismissed by Porel.
Porel returned figures of 4/139 as Bengal toiled hard for breakthroughs. Pace spearhead Dinda claimed 3/116, while offspinner Aamir Gani bagged 2/84, including the prized wicket of Ramaswamy.
In Kalyani: Vidarbha 499; 138.1 overs (Sanjay Ramaswamy 182, Faiz Fazal 142, Aditya Sarwate 89; Ishan Porel 4/139, Ashok Dinda 3/116).
Bengal 89/3 in 24 overs (Manoj Tiwary 36 batting).
In Dharamsala: Himachal Pradesh 175.
Chhattisgarh 389/6 in 120 overs (Rishabh Tiwari 131, Amandeep Khare 78, Ashutosh Singh 54).
In Delhi: Services 263 in 107.2 overs (Vikas Yadav 84, Nakul Verma 64; Heramb Parab 3/37, Amogh Desai 3/18).
Goa 150/6 in 69.3 overs (Sagun Kamat 50; Sachidanand Pandey 3/23).