The benchmark BSE Sensex closed higher by 95.61 points or 0.28 percent at 34,427.29, with overall gains capped by a weakening rupee and rising oil prices.
The broader Nifty 50 index rose 39.10 points or 0.37 per cent to end at 10,565.30, its highest closing level since February 26, 2018, after moving in a range of 10,572.20 and 10,546.20. Infosys is gaining 2.35% and Wipro is adding 2.3%.
At 3:24 PM, the BSE Sensex was trading at 34,458, up 42 points, while the Nifty50 index was trading at 10,576, up 12 points.
Stating that fiscal 2017-18 has been a "sobering year" on slower revenue growth, TCS on Thursday reported a 4.4 per cent rise in March quarter net profit at Rs 6,904 crore. Both the key indices ended higher for the fourth straight week.
Meanwhile, foreign funds sold shares worth Rs 624.99 crore in Thursdays trade, provisional data showed.
It had gained 420.30 points, or 4.15 per cent in the past nine sessions.
However, Motilal Oswal Securities, which maintains a neutral stance on TCS with a target price of ₹3,000, said the stock already trades at 19x FY20 expected earnings, and continued single-digit growth rate will not make a case for further expansion in valuation multiples.
Tata Steel, NALCO, Hindustan Copper, Bank of India and Reliance Power were some of the BSE stocks which traded lower. However, apart from IT, all other sectoral sub-indices were in the red with metal and PSU Bank sectors bleeding in excess of 1.50 per cent each.
The BSE IT index rallied 4.80 per cent, while teck and auto also finished higher.
Coming to global markets, in the Asian region, Japan's Nikkei fell 0.13 per cent, Shanghai Composite Index shed 1.47 per cent and Hong Kong's Hang Seng declined 0.94 per cent.
However, IT stocks shrugged off the weakness in broader market with the NSE IT index rising almost 5 per cent. Frankfurt's DAX was down 0.10 per cent and Paris CAC edged lower by 0.01 per cent. London's FTSE, however, was up 0.40 per cent.