Voting took place on 13 seats of Punjab and an equal number of seats in Uttar Pradesh, nine in West Bengal, eight seats each in Bihar and Madhya Pradesh, four in Himachal Pradesh, three in Jharkhand and one in Chandigarh.

A bypoll was held in Goa's Panaji, made necessary by the death of former Chief Minister Manohar Parrikar in March. Bye-elections were also held in four assembly constituencies of Tamil Nadu -- Sulur, Aravakurichi, Ottapidaram and Thiruparankundram -- and the Dehri assembly seat in Bihar.

Bengal saw the most heated battle as the BJP, which won only two seats in the state in 2014, is targeting 23 of its 42 Lok Sabha seats. Today, rival groups threw crude bombs during by-polls for Bengal's Bhatpara assembly seat. The clash came under control only after the police used batons. Two BJP candidates from Kolkata and one from Diamond Harbour claimed they were attacked.

Trinamool blames the BJP for the violence and accused Central forces of "taking orders from BJP, mercilessly beating up citizens and Trinamool workers". Mamata Banerjee said: "The torture that BJP workers and central forces have carried out today since the morning, is unprecedented. I have never seen anything like this before".

Union Minister Nirmala Sitharaman has called for the presence of Central forces in Bengal till the counting of votes gets over. "We fear the TMC will carry out a concerted and synchronised round of violence post-election and that's why Central forces must remain there. The TMC has been persistent with their ideology of violence," she said.

In Varanasi, Congress's Ajay Rai and grand alliance candidate Shalini Yadav was up against Prime Minister Narendra Modi. The Congress, which is going solo in this election, is trying to regain lost ground in eastern Uttar Pradesh by putting Priyanka Gandhi Vadra in charge in the area. But despite a huge buzz, the party has not fielded her from Varanasi against PM Modi.

In Punjab, Chief Minister Amarinder Singh has asked his party workers to deliver all 13 seats to the party. In 2014, the Arvind Kejriwal's Aam Aadmi Party and the Shiromani Akali Dal had won four seats each, the Congress three and the BJP two.

Besides Varanasi, the key seats that voted in this round included Bihar's Patna Sahib, where actor-turned-politician Shatrughan Sinha takes on Union Minister Ravi Shankar Prasad; Chandigarh, which is seeing a triangular battle between the BJP's Kirron Kher, Congress candidate Pawan Kumar Bansal and AAP's Harmohan Dhawan; Gurudaspur, where actor-politician Sunny Deol is up against Congress parliamentarian Sunil Jakhar.

The BJP had the most at stake in this phase of the election. In 2014, it won 30 of these seats and is trying to increase the tally. The party is facing a grand alliance of Mayawati and Akhilesh Yadav in Uttar Pradesh and the Congress and Lalu Yadav's party in Bihar. In Punjab and West Bengal, it is facing the Congress and the Trinamool Congress.