The BSE Sensex rallied 1.9 percent and the Nifty rose 2 percent on Monday as a drop in global crude prices after Iran clinched a nuclear deal with world powers sparked hopes of reduced inflationary pressures and a narrower current account deficit at home.
Bank shares such as ICICI Bank led the gains on hopes falling inflation would reduce the chances of continued rate hikes by the Reserve Bank of India, while shares of state-run oil marketing companies also surged.
Still, some caution is expected to creep in, ahead of the expiry of November derivatives contracts on Thursday. India is also due to post July-September gross domestic product data on Friday.
Indian shares have fallen for three consecutive weeks, or ever since the benchmark BSE index hit a record high on November 3, while recent signs that foreign investors are curbing their purchases have also help reignite fears about the impact from any potential Federal Reserve tapering.
"Biggest immediate driver for the market would be the state election results in December. Iran deal is too early to understand and was used as more of an excuse to cover short positions ahead of expiry," said Paras Adenwala, managing director and principal portfolio manager at Capital Portfolio Advisors.
The Nifty rose 2 percent, or 119.90 points, to end at 6,115.35, closing above the psychologically important 6,100 level.
The benchmark Sensex rose 1.92 percent, or 387.69 points, to end at 20,605.08, marking its biggest single-day gain since November 18.
The gains came after Brent crude prices dropped as much as $3 a barrel on Monday as supply fears eased.
Tough sanctions against Iran in the past two years have slashed exports from the OPEC member by more than half, keeping crude prices high.
Bank shares surged on hopes the central bank will reconsider monetary tightening after raising the repo rate by a total of 50 basis points over September and October.
The Bank Nifty rose 3.8 percent to mark its biggest single-day percentage gain since October 29.
ICICI Bank surged 5.3 percent while HDFC Bank rose 2.7 percent.
Also, Axis Bank rose 3.1 percent after exchange operator BSE Ltd said it will include the lender in its benchmark BSE index, starting December 23.
Shares of mid-cap state-owned banks gained as investors unwound short positions in November futures on hopes of easing inflation after a steep fall in crude prices.
UCO Bank gained 3.1 percent, Indian Overseas Bank rose 2.9 percent while IDBI Bank ended 2.2 percent higher.
Shares of state-run oil marketing companies gained as well. Indian Oil Corp gained 2.6 percent, Bharat Petroleum Corp rose 4.4 percent, while Hindustan Petroleum Corp surged 5.7 percent.
Pfizer Ltd , the Indian unit of U.S. drug maker Pfizer Inc , surged 11.74 percent, while Wyeth Ltd jumped 13.9, after their boards approved a merger on Saturday.
Pfizer and Wyeth also said they would pay interim dividends of 360 rupees and 145 rupees per share respectively.
However, among decliners, Infosys eased 0.7 percent on profit-taking after making near three-year high last week.