Speaking to a sea of followers at a "divine victory" rally in south Beirut, Nasrallah said the Shi'ite Muslim group had emerged stronger from the conflict.
"The resistance today ... has more than 20,000 rockets," he told hundreds of thousands of cheering supporters in a Muslim suburb heavily bombed in the 34-day war.
"(It) has recovered all its organisational and military capabilities ... it is stronger than it was before July 12.
"There is no army in the world that can (force us) to drop our weapons from our hands, from our grip," he declared.
The huge turnout in a country of just 4 million was a gesture of defiance to Israel but also marked a challenge to the US-backed government of Prime Minister Fouad Siniora.
Hezbollah has two ministers in the cabinet, but most cabinet members oppose the group's alliances with Syria and Iran.
"The current government is unable to protect Lebanon, or to reconstruct Lebanon or to unify Lebanon," Nasrallah said, calling for a new "national unity government".
Since the war, Israeli officials have said they would continue to target Hezbollah's leadership but Prime Minister Ehud Olmert refused to comment yesterday on whether Israel would try to kill Nasrallah if he appeared at the rally.
Thousands had walked to the rally from Shi'ite villages in south Lebanon battered by Israel's bombardment and invasion.
The Beirut crowds carried pictures of Nasrallah and yellow Hizbollah flags bearing the message: "Here we are Nasrallah".
Many wore yellow T-shirts and chanted pro-Hizbollah slogans. Some said they were there not only to celebrate but also simply to see the charismatic leader.
The rally had been expected to coincide with the final withdrawal of Israeli troops from the south, but Israel's army chief says the pullout may take a few more days.
Israeli forces have been gradually leaving territory they captured in fighting that began after Hizbollah guerrillas seized two Israeli soldiers in a cross-border raid.
Israel and Hizbollah have both declared themselves victors in the war that killed nearly 1,200 people in Lebanon, mostly civilians, and 157 Israelis, mainly soldiers.
