The Sensex ended Wednesday's lacklustre session 57 points higher while the broader Nifty closed at its highest level in 2016 at 7,980.
For most part of the day, the Sensex and Nifty traded in a choppy manner ahead of derivatives expiry for the month of April which is due on Thursday. Meanwhile, weakness in heavyweight banking, pharma, power and capital goods stocks capped gains for the benchmark indices.
From the Nifty basket of stocks, 28 stocks closed higher while 23 ended lower.
Adani Ports & SEZ was the top Nifty gainer; the stock closed 5.3 per cent higher at Rs 241.25. Bharti Airtel, ONGC, Bharti Infratel, GAIL India, Mahindra & Mahindra, ITC and IndusInd Bank also closed 1.8-3.5 per cent higher.
On the other hand, ICICI Bank, Axis Bank, State Bank of India, Tata Power, HCL Technologies, BHEL, Hindalco, Tata Motors, Lupin and Aurobindo Pharma were among the laggards.
The overall market breadth was neutral as 1,279 stocks ended higher while 1,290 closed lower on the BSE.