Buying was mainly seen in healthcare, consumer durables, realty, oil and gas and power segment which lifted the market.
The 30-share Sensex had lost 110.29 points to 27,721.25 points in early trade.
Buying in bluechips helped the index recover losses and was quoted at 28,020.88 points at 1130 hrs, a gain of 189.34 points or 0.68 per cent over previous close.
The 50-share Nifty crossed 8,500 level by rising 52.05 points to 8,518.60.
Also Read
However, major losers were SBIN by 1.44 pct, BhartiAirtel by 1.35 pct, Hindalco by 1.29 pct and Bhel by 0.86 pct.
Meanwhile, foreign portfolio investors (FPIs) sold shares worth a net Rs 255.42 crore yesterday.
In overseas markets, Asian stocks were trading lower in early trade. Key indices in Japan, China, Hong Kong, Singapore, Taiwan and South Korea were down up to 3.04 per cent.