The S&P BSE Sensex rose 7.03 points, or 0.04%, to close at 19,642.75 after hitting day's high of 19,742.42. It has now gained over 174 points in three straight days.
While RIL clocked 3.13% rise after it said it will invest $5 billion along with BP in the flagging KG-D6 fields, losses in ICICI Bank, ITC, SBI, Tata Motors and L&T almost dragged the 30-share index down. Tata Steel, Jindal Steel and Sterlite also ended lower. The 50-share National Stock Exchange index Nifty rose by 3.35 points, or 0.06%, to 5,943.05.
"A tug of war was seen between heavy weights in oil & gas and cement sector stocks which gained and metals and financial which saw weakness and traded with losses. Lack of any major domestic resulted in subdued performance," said Nagji K Rita, CMD, Inventure Growth and Securities.
Traders said while profit-booking erased most of the day's gains, an upsurge in RIL, followed by support in HDFC Bank, TCS, Coal India and Hero MotoCorp helped the market barely close in the positive terrain.
A firming trend in Asian region and higher opening in Europe further helped Indian stocks to close up, they added.
After BSE Oil & Gas that rose 1.7%, BSE Realty sector index was second best performer as it rose 0.77%, followed by BSE Information Technology index 0.6% and BSE TECk 0.29%.
Asian stocks ended higher as economic data triggered optimism for the region's exports and economies. Key benchmark indices in Hong Kong, China, Singapore, South Korea, Japan and Taiwan were up by 0.40-1.95%. Indications of higher opening in US index futures also boosted the market to some extent.