Here is your 10-point cheatsheet to this big story:
Amit Shah and Smriti Irani got 46 votes each. "Satyamev Jayate (the truth shall prevail)," Ahmed Patel tweeted a little before 2 am, announcing his win.
Hours before, the Congress had taken the Gujarat battle to Delhi, petitioning the Election Commission to disqualify the votes of two party MLAs who showed their ballot papers to the BJP's representatives. After watching a video of the vote and several hours of deliberation, the poll panel said they had violated secrecy.
The Election Commission order, delivered close to midnight, reduced the strength of the house to 174, which meant that each candidate needed 44 votes to win a Rajya Sabha seat, instead of 45, a target that was seeming increasingly impossible for Ahmed Patel to get amid cross voting and defections in his party.
Ahmed Patel's win was the best news the Congress has had in a long while and party workers engaged in frenzied celebration in Gandhinagar. Mr Patel is political secretary to Congress president Sonia Gandhi and his win on Tuesday in a face-off with the BJP's master strategist Amit Shah is a big shot in the arm of the opposition party ahead of assembly elections later this year in Gujarat, where it has steadily lost ground to the BJP.
Amit Shah and Smriti Irani were sure to win given the BJP's big numbers in the Gujarat assembly, whose members vote for the Rajya Sabha election. The party also fielded a third candidate to challenge Ahmed Patel for the third seat.
Ahead of the election, the Congress saw six legislators resign in a rebellion allegedly designed by veteran politician Shankarsinh Vaghela, who too exited the party two weeks ago after he was sidelined. Three joined the BJP, one of them Balwantsinh Rajput, the candidate who lost to Ahmed Patel today.
Mr Patel was counting on 44 of the Congress' 51 MLAs to support him. One of the 44 voted against him, so he had 43 votes from his party. It is not known yet who else voted for the Congress leader - he had expected Chhotubhai Vasava, the lone Janata Dal (United) legislator, and one of two MLAs from Sharad Pawar's Nationalist Congress Party (NCP) to vote for him.
Clearly only one of them did. A BJP rebel Nalin Kotadiya announced late in the night that he had voted against the party.
Less than an hour into voting on Tuesday morning, Shankersinh Vagehla had called the election, declaring Ahmed Patel defeated. Mr Vaghela said Mr Patel would "not even win 40 votes" and confirmed he had voted against the Congressman.
At least six more Vaghela loyalists still with the Congress - including the two that the Election Commission disqualified - are believed to have voted for the BJP.
Rajya Sabha Pays Rich Tributes To 3 Sitting, 11 Former Members Congress Set To Lose Ahmed Patel's Hard-Won Rajya Sabha Seat To BJP For Top Sonia Gandhi Aide Ahmed Patel, A Supreme Court Setback Walmart Employee's Big Claim After Indian-Origin Teen Found Dead In Oven Who Was Gursimran Kaur, Indian Teen Found Dead In Walmart Oven Businessman's Rs 1 Crore Rolex Gift To Contractor For Building His "Fortress" North Korea Says It Test-Fired Latest ICBM Hwasong-19 On Thursday Ex-Armyman Opens Fire At Man Over Parking Dispute In Pune; Arrested US Elections: 60 Million Cast Early Votes In Kamala Harris-Trump Tight Race Track Latest News Live on NDTV.com and get news updates from India and around the world.