Bengaluru: A twinge of bitterness laced the taste of victory as the National Democratic Alliance (NDA) won 16 of the 28 Legislative Council seats it contested in biennial polls across four large states on 23 October while Opposition parties stormed key strongholds, including Varanasi, Patna, Nagpur, Lucknow and Agra.
The Prime Minister Narendra Modi-led Bharatiya Janata Party (BJP) won 13 of the 28 Member of Legislative Council (MLC) seats in the nationwide fray while its NDA alliance partners—Shiv Sena (Eknath Shinde), Janata Dal (United) and Janata Dal (Secular)—won one seat each, taking the coalition’s tally to 16.
In Karnataka, the NDA won all four seats. In poll-bound Uttar Pradesh, it registered six victories out of 11 seats, with three wins in Bihar and two in Maharashtra.
The Indian National Developmental Inclusive Alliance (INDIA) bloc got a shot in the arm as the Akhilesh Yadav-led Samajwadi Party (SP) registered five victories in Uttar Pradesh, unseating the BJP in Lucknow and Agra Graduates’ constituencies in the state. Nearly 15 lakh people voted in the Uttar Pradesh MLC elections.
The Sharad Pawar-led Nationalist Congress Party (NCP) won two seats, and the Congress bagged the third, restricting the NDA to just two out of the five seats that went to the polls in Maharashtra. In Bihar, the Lalu Prasad Yadav-led Rashtriya Janata Dal (RJD) bagged one seat (Patna Teachers) while Prashant Kishor-led Jan Suraaj Party won the Darbhanga Teachers’ seat.
As early trends emerged, the BJP took potshots at the Congress, saying it had failed to secure any of the four seats it previously held.
“MLC elections in 28 seats across 4 big states – Uttar Pradesh, Maharashtra, Bihar and Karnataka. Elections held using ballot papers. Guess how many seats Congress won?” the PM said in a post.
This triggered a wave of comments from the BJP ecosystem, with several Union Ministers joining the Prime Minister in mocking the Congress and targeting its ‘vote chori’ campaign.
Hours later, however, the Congress’s Abhijeet Wanjari was declared the winner in the Nagpur Graduates’ constituency after nearly two whole days of counting, edging out the BJP’s Sudhakar Kohale by 3,271 votes.
Before the polls, the Congress held four MLC seats, including two in Maharashtra and one each in Bihar and Karnataka. The Congress contested a total of 12 seats in three states—Bihar (5), Karnataka (4) and Maharashtra (3)—but managed to win just the Nagpur seat.
Also Read: BJP retains 6 UP MLC seats, but SP gets crucial Varanasi boost before 2027
Bihar
In Bihar, the NDA retained four seats of the eight it held. The winners included Neeraj Kumar of the JD(U), who won his seat. The BJP’s Narendra Prasad Singh was able to edge out the Communist Party of India’s (CPI’s) Sanjay Kumar Singh in Tirhut Teachers’ constituency.
The polls in Bihar were spread across five districts and the BJP expected a higher tally considering its recent success in the assembly polls.
Arguably, the BJP’s biggest upset was the Patna Teachers’ seat where Naval Kishore Yadav had won five consecutive terms. Bankipur in Patna is represented in Parliament by BJP national president Nitin Nabin. Naval Yadav lost to the RJD’s Sanjeev Kumar, who secured another seat for the INDIA bloc.
Expelled BJP leader Rahul Raj won as an Independent in Saran Teachers’ constituency, unseating Afaque Ahmed who won last time, backed by the Jan Suraaj Party (JSP).
The Prashant Kishor-led JSP made its official council debut victory as Dr Suresh Prasad Rai emerged as the party’s sole winner in Darbhanga Teachers’ constituency. He defeated sitting Congress MLC Madan Mohan Jha by a slender margin of 324 votes, according to last reported trends. The council victory comes close on the heels of the JSP winning its maiden assembly bypoll from Bankipur in August.
Banshidhar Brajwasi was re-elected as an Independent from the Tirhut Graduates’ constituency.
Uttar Pradesh
In Uttar Pradesh, the BJP had won six seats in the 2020 MLC polls but its tally jumped by one when Dhruv Kumar Tripathi, who earlier contested as an Independent from the Gorakhpur-Faizabad Teachers’ constituency, joined the Modi-led party.
Going by this count, the BJP lost one seat as the SP gained two more than in 2020. The Akhilesh Yadav-led SP unseated the BJP in Varanasi and Lucknow Graduates’ seats. Akash Agarwal, who won as an Independent in 2020, won the Agra Teachers’ seat on an SP ticket.
The results are significant as Chief Minister Yogi Adityanath campaigned for the BJP candidates on every seat, while the SP largely relied on its local leaders to mobilise support.
In Prime Minister Narendra Modi’s parliamentary constituency of Varanasi, the SP managed to wrest a victory in the graduates’ seat from the BJP while retaining the teachers’ seat it won in 2020.
The BJP also lost in Lucknow, represented in Parliament by Defence Minister Rajnath Singh.
“The BJP is in a bad state, frustrated by the defeat in the Varanasi MLC elections. The Lucknow folks aren’t picking up calls from the Delhi folks. The truth is that the BJP has been completely wiped out in the UP MLC elections,” Akhilesh Yadav said in a post.
वाराणसी में एमएलसी चुनाव में हार से हताश भाजपा की हालत ख़राब है। लखनऊ वाले दिल्ली वालों का फ़ोन नहीं उठा रहे हैं।
सच तो ये है कि भाजपा यूपी एमएलसी चुनाव में ऑल आउट हो गई है।
— Akhilesh Yadav (@yadavakhilesh) October 28, 2026
Neither the Congress nor the Bahujan Samaj Party (BSP) fielded candidates in Uttar Pradesh, where assembly elections are due next year.
Also Read: Maharashtra MLC polls once again expose Mahayuti cracks, push leaders into damage control mode
Maharashtra
In Maharashtra, Kausthub Gawde of the BJP defeated sitting Congress MLC Jayant Asgaonkar in the Pune Teachers’ constituency. Gawde faced a tough contest from Independent candidate Sachin Sanap, who was backed by Maharashtra Deputy Chief Minister Eknath Shinde-led Shiv Sena, an NDA alliance partner.
In the Pune Graduates’ constituency, Harshada Deshmukh-Jadhav of the NCP (Sharad Pawar) retained the seat for the party by defeating the BJP’s Smitha Jadhav. In Chhatrapati Sambhajinagar Graduates’ constituency, Prathap Patil of the NCP won by defeating the NDA’s Satish Chavan who represented the NCP’s Sunetra Pawar faction.
Sitting MLC Kiran Sarnaik retained his seat in the Amaravati Teachers’ constituency, taking the NDA’s tally to two in Maharashtra.
The biggest upset for the BJP, particularly Maharashtra Chief Minister Devendra Fadnavis, came in Nagpur as Abhijit Wanjari of the Congress retained his seat in a hard-fought contest that lasted nearly two whole days.
The rollercoaster elections in Nagpur saw the BJP celebrate early and later retract its comments.
Maharashtra Chief Minister Devendra Fadnavis was forced to delete his “A big fat ZERO” tweet, reposting Modi’s jibe at the Congress.
“By deleting the tweet, Fadnavis has once again preserved Savarkar’s legacy! Even before the full results were in hand, in a show of firing a big arrow, Fadnavis tweeted. But that very arrow turned back and pierced his chest! In the end, he was forced to delete the tweet,” the Maharashtra unit of the Congress said in a post.
The victories and defeats came amid complex political equations.
In Amravati Teachers’ constituency, sitting MLC Kiran Sarnaik contested on a Shiv Sena ticket against Congress’s Aditi Pohare. Shiv Sena (UBT) also fielded a candidate.
In Pune Graduates’ constituency, the BJP’s Smita Jadhav took on the NCP (SP)’s Harshada Deshmukh, with the Shiv Sena (UBT) also in the fray.
In Pune Teachers’ constituency, the BJP put up Gawde against Congress’s sitting MLC Jayant Asgaonkar. The Shiv Sena backed Independent Sachin Sanap, Officer on Special Duty to state minister Uday Samant. In Chhatrapati Sambhajinagar Graduates’ constituency, sitting NCP MLC Satish Chavan faced NCP (SP)’s Pratapsinh Patil, while Shiv Sena (UBT) also fielded a candidate.
In Nagpur Graduates’ constituency, sitting MLC Abhijit Wanjari faced BJP nominee Sudhakar Kohale. BJP rebel Anil Sole withdrew and backed Kohale.
The constituency is also the home seat of Nitin Gadkari as well as the headquarters of the BJP’s ideological parent, the Rashtriya Swayamsevak Sangh (RSS).
Karnataka
The BJP managed to retain its three seats in Karnataka while its alliance partner, the JD(S), managed a victory in the hotly contested Bengaluru Teachers’ constituency earlier held by the Congress.
Compared to the other three states, results for most seats were declared early in Karnataka.
Karnataka accounted for four of the 28 seats that went to the polls across four states. In Karnataka, around 3.25 lakh voters delivered their verdict for the four MLC seats, with the BJP-JD(S) alliance dealing a blow to Chief Minister D.K. Shivakumar-led government.
The election defeat adds to the growing pressure on Shivakumar, especially by Union Minister H.D. Kumaraswamy, who earlier levelled allegations that the chief minister has been conducting sting operations on political leaders across the state.
Kumaraswamy, the state president of the JD(S), also alleged that Shivakumar had engineered a sting operation on his predecessor, Siddaramaiah, forcing the latter to step down from the top chair.
Before the polls, the Congress held 38 out of the 75 seats in the upper house of the state legislature while the BJP held 24 and the JD (S) six. There is one Independent and one chairperson in the house. Five seats are vacant.
“People have given us a message that we have to review, introspect and rectify,” Shivakumar said earlier. However, he doubled down on calls against the Special Intensive Revision (SIR) and renewed demands for the resignation of Chief Election Commissioner Gyanesh Kumar. On the ballot paper controversy, he said that the Congress will come up with a new plan of action after 1 November.
(Edited by Nardeep Singh Dahiya)
Also Read: Modi can stare down the Congress. The real challenge is dealing with youth protests
