After opening on a weak note, the 30-share BSE index settled 226.79 points, or 0.55 per cent, higher at 41,613.19 -- hitting an intra-day high of 41,697.03 and a low of 41,275.60.
Likewise, the broader NSE Nifty closed 67.90 points, or 0.56 per cent, up at 12,248.25.
Ultratech Cement was the top gainer in the Sensex pack, advancing 2.44 per cent, followed by Tech Mahindra, Axis Bank, Titan, Kotak Bank, ICICI Bank and Bajaj Finance.
On the other hand, PowerGrid, IndusInd Bank, Sun Pharma, TCS, RIL and Infosys, Maruti and HDFC Bank ended in the red.
According to traders, a rally in financial stocks ahead of the Union Budget is supporting domestic stocks.
Further, recovery in global markets after the World Health Organisation designated coronavirus infection an emergency for China, but not yet for the rest of the world, also buoyed benchmarks.
Bourses in Hong Kong and Japan ended on a positive note, while markets in China, Taiwan and South Korea were closed for a holiday on Friday.
European markets were also trading higher in their early sessions.
Brent crude oil futures rose 0.15 per cent to USD 62.13 per barrel.
The rupee depreciated 6 paise to 71.32 per US dollar (intra-day). ANS BAL