The benchmark BSE Sensex on Monday regained 29,000-level to settle at over one-month high of 29,044.44 by rising 165.06 points, whereas NSE Nifty rose for the seventh straight session mainly on account of better-than-expected IIP data.
Country's industrial production grew at a nine-month high of 5 per cent in February on improved mining and manufacturing activity, equity brokers said.
Cautioned, however, prevailed ahead of consumer price index to be released after trading hours, which restricted the rise to some extent, they added.
In volatile movements, the 30-share Sensex opened firm at 28,955.13 and quickly regained the 29,000-mark on sustained buying activity. But, on emergence of profit-booking it slipped into negative zone to touch day's low of 28,843.94.
However, it staged a strong comeback at the fag-end to hit the day's high of 29,072.51, before settling 165.06 points or 0.57 per cent higher at 29,044.44.
The 50-share NSE Nifty ended above the 8,800-level by rising 53.65 points or 0.61 per cent to 8,834.00 after shuttling between 8,841.65 and 8,762.10 intra-day.
Monday's closing of the both the indices is their highest since March 5.
Shares of L&T saw brisk buying and gained 2.30 per cent on the Sensex after it signed an agreement with France's Areva for manufacturing of nuclear plant equipment.
The rise in the 30-share index was supported by gains in Bharti Airtel that climbed 3.18 per cent, while BHEL surged 2.98 per cent. Sun Pharma at 2.69 per cent and RIL 2.07 per cent were among other gainers.
Among 30-Sensex stocks, 16 ended higher while 14 closed in negative terrain.
The broader markets also rose as the BSE small-cap and mid-cap indices rose 0.81 per cent and 0.31 per cent, respectively.
Meanwhile, Foreign Portfolio Investors bought shares worth Rs 362.79 crore while Domestic Institutional Investors sold shares worth Rs 135.18 crore on Friday, as per provisional data.
Globally, in Asian region, markets ended mixed while European stocks were little changed in their early trade.