"Today is largely seen as a corrective recovery in the market because it had gone into an oversold territory," said Deven Choksey, promoter, KR Choksey.
"Markets will now look out for the Gujarat election outcome. There may be some recovery in the markets ahead of the earnings season and the government budget next month," he added.
The Sensex ended 352 points higher at 32,949 while Nifty settled at 10,166.
The Nifty PSU bank index gained as much as 1.2 percent, with State Bank of India and Bank of Baroda Ltd rising more than 1 percent each.
GAIL (India) Ltd was the top gainer among the Nifty 50 stocks, rising 8 per cent. Other top gainers included Bharti Airtel (up 6.5 per cent) and Tech Mahindra (up 5 per cent).