Sentiment remained upbeat for the better part of the day on account of positive leads from European markets before the release of the latest Federal Reserve minutes and British unemployment data.
Stocks of consumer goods companies were back in the limelight on value-buying, recovering from recent losses sparked by worries over the impact from recently launched Goods and Services Tax (GST) in July.
The 30-share Sensex zoomed 321.86 points or 1.02 per cent to close at 31,770.89, its highest closing since August 9, when it had closed at 31,797.84. Intra-day, the gauge shuttled between 31,805.99 and 31,399.35.
The NSE Nifty, which again went past the 9,900-mark to touch a high of 9,903.95 intra-day, finally settled 103.15 points, or 1.05 per cent higher at 9,897.30.
Stock exchanges were shut yesterday on account of "Independence Day".