Indian markets ended sharply higher on Thursday, with Nifty approaching 23,000 and Sensex surging over 1,500 points as strong buying in IT, Financial Services and Auto lifted sentiment, while weakness in FMCG, Energy and Consumer Durables limited broader market gains.