The absence of fresh triggers and the upcoming expiry of futures and options contracts on Thursday prevented the benchmark indices from making spectacular gains on Monday, even though the mood was buoyant.
The S&P BSE Sensex closed at 26,034.13, its highest in three-and-a-half weeks. The 30-scrip index's previous high during the month was 26,117.85 on 2 December.
The Sensex opened at 25,901, a gain of about 63 points and touched an intra-day high of 26,067 at around 3 pm, before finally settling down at 26,034, up 195 points, or 0.76%.
The NSE Nifty closed at 7,925.15, a gain of 64 points, or 0.82%.
Top Sensex gainers included Dr Reddy's Labs, NTPC, Tata Motors, ONGC, Sun Pharma, ICICI Bank, Lupin, Adani Ports and Cipla.
Tata Steel, Bharti Airtel, M&M, BHEL and HDFC were the top Sensex losers.
Pipavav Defence and Offshore, an Anil Ambani Group company, gained yet again on Monday and touched a new 52-week high of Rs 114 but later lost substantially to close at Rs 98.35, down 1.90% from its previous close.
The stock had soared almost 20% last Friday on news that it will benefit from Reliance Defence signing a defence deal to make frigates for Indian Navy in collaboration with a Russian firm. The frigates are to be built at Pipavav's facility in Gujarat.
Other shares that scaled a new 52-week high included Tube Investments, Zensar Technologies, Jet Airways, Arvind, Berger Paints and TV 18 Broadcast.
Insurance company Max India gained after the company's demerger of its business got the approval of the Punjab and Haryana High Court.
The three new entities will be Max Financial Services (currently Max India), Max India (currently Taurus Ventures) and Max Ventures and Industries (currently Capricorn Ventures), the company said in a regulatory filing with the BSE on Monday.
On the NSE too, Dr Reddy's Labs, Tata Motors, NTPC, Sun Pharma and ICICI Bank were the big gainers. The advances-to-declines ratio was 33:16.