An anti-corruption party has won a stunning victory in the Delhi state elections in a huge setback for India's Prime Minister Narendra Modi.
The BJP admitted defeat after Arvind Kejriwal's Aam Aadmi Party (AAP) won 67 of the 70 assembly seats.
Mr Modi congratulated the AAP leader, whose career seemed doomed a year ago when he quit as Delhi's chief minister over a crucial anti-corruption bill.
It is the BJP's first setback since it triumphed in the 2014 general election.
Correspondents say the win marks a remarkable comeback for Arvind Kejriwal, a former tax inspector.
His party was routed by the BJP in last May's general elections, months after the AAP made a spectacular debut in the 2013 Delhi elections.
Mr Modi has enjoyed huge popularity since taking office last year, winning a string of local elections and wooing international investors and world leaders.
Final results gave Mr Modi's Bharatiya Janata Party (BJP) just three seats. India's main opposition Congress party failed to win a single constituency.
Mr Kejriwal told cheering party supporters that the "people of Delhi have achieved something spectacular".
"With the help of people, we will make Delhi a city which both poor and rich will feel proud of," he said.
As supporters showered him with rose petals, Mr Kejriwal said the huge mandate was "very scary and we should live up to people's expectations".
The BJP's campaign was essentially anti-AAP and the party leaders often criticised Mr Kejriwal at their rallies and road shows.
Mr Kejriwal, meanwhile, conducted an energetic campaign which proved popular with working class and underprivileged voters who make up 60% of Delhi's population.
The BJP fielded former policewoman Kiran Bedi as its candidate for chief minister.
"We never expected that the results would be so depressing. We never expected that we would suffer such a setback. It is certainly not our day today," BJP leader Praveen Shankar Kapoor told BBC Hindi.
At the scene: Nitin Srivastava, BBC Hindi, Delhi
The atmosphere around the Aam Aadmi Party (AAP) is electrifying.
As results showed the anti-corruption party steaming ahead, supporters began discussing the formation of the new government. They say their victory "will be a reinforcement of the common man's choices".
"If people feel 2014 was the year of the Modi wave, this will be the year of an AAP sweep," Rajesh Kumar Arya, a supporter, said.
Sweets have begun arriving in homes in the neighbourhood for the celebrations and AAP supporters are setting off fireworks and singing songs.
The BJP supporters I spoke to said they felt dejected by a few crucial decisions the party took immediately before the polls, including the announcement of the "outsider" Kiran Bedi as the chief ministerial candidate.
Ms Bedi and Mr Kejriwal worked together as anti-corruption campaigners, but the two have since developed an intense rivalry.
During weeks of hectic campaigning, both candidates promised to bring in good governance, end corruption and make Delhi safe for women.
In December 2013, the BJP won most seats but fell short of an overall majority in Delhi, leaving the AAP - which came second - to form a coalition with Congress.
But Mr Kejriwal resigned after 49 days in office, when opposition politicians blocked a bill that would have created an independent body with the power to investigate politicians and civil servants suspected of corruption.
Since then the state has been governed directly by the federal authorities.