The benchmark Sensex rebounded over 135 points to close at 27,780.83, reversing its two-day fall, led by gains in Coal India, Sun Pharma and Tata Steel on value-buying by investors.
The smart recovery came as other Asian markets shaped up.
However, sentiment remained off-colour because of lingering concerns of Greece's debt crisis.
In a volatile session, the 30-share index, which swung between gains and losses, finally settled higher by 135.68 points, or 0.49%, at 27,780.83. Intra-day, it shuttled between 27,814.53 and 27,570.95.
The gauge had lost 250.82 points in the previous two sessions on the worsening Greece's debt situation.
Meanwhile, the benchmark ended first quarter (April-June) of this fiscal with losses.
Also, the 50-share Nifty, after moving both ways, ended higher by 50.10 points, or 0.60%, at 8,368.50.
Brokers said value-buying in select blue-chips, coupled with a slightly better trend at other Asian markets after the previous day's rout on Greece uncertainties, influenced sentiment here.
They said, however, caution prevailed as investors awaited further cues on Greece.
Sun Pharma closed 2.89% up at Rs 874.20 after reports that the company has raised drug prices.
Other gainers that aided the recovery include Coal India, Tata Steel, Lupin, ITC and Hind Unilever.
However, software exporters led by TCS, Wipro and Infosys came under selling pressure and fell up to 1.59% after revenue warnings by some IT companies.
Sector-wise, the BSE Healthcare index gained the most by rising 2.11%, followed by FMCG (2.02%), consumer durables (1.90%), metal (1.73%) and PSU (0.68%).
BSE Mid-cap rose 1.33% while Small-cap ended 1.07% up.
Meanwhile, foreign investors sold shares worth Rs 711.88 crore on Monday, according to provisional data.
Globally, Asian markets provided some cheer after Chinese stocks halted their three-day fall. Japan's Nikkei ended 0.63% higher while Hong Kong's Hang Seng rose 1.09%.
European markets, however, were trading lower in their opening trade as investors weighed whether Greece will default on a payment due on Tuesday.