India lost 0-1 to Bahrain in their last Group A match to crash out of the Asian Cup football tournament on Monday.
Jamal Rashed (90+1) converted a penalty in second-half added time as Bahrain managed to break India's dogged defence after 90 minutes of grim battle.
India finished at the bottom of the group with three points from as many matches.
With hosts, the United Arab Emirates (UAE) being held 1-1 by Thailand in the other Group A match of the night, both teams entered the next stage with Bahrain qualifying as the third-best team.
The UAE finished the group stage with five points, while Thailand and Bahrain managed four points each.
It was not a good start for India as center back Anas Edathodika succumbed to injury in the opening minutes and was replaced by Salam Ranjan Singh.
Gurpreet Singh Sandhu's goal was threatened and he was called into action as early as the 5th minute when he pulled off an acrobatic save off Komail's shot from outside the box.
With Bahrain keeping possession for the first ten minutes, India's first chance came in the 13th when Pritam Kotal released a cross for Ashique Kuruniyan, whose header was blocked by the opposition defence.
Halicharan Nazary's 22nd minute shot added to India's shot tally but hit the side-netting.
The 28th minute saw some exquisite passing by India in Bahrain's box.
Pronay Halder found Halicharan on the wings, who dribbled in and laid one for Sunil Chhetri lurking in the box. Last ditch tackle from Bahrain's defence blanked Chhetri as he was attempting to shoot on goal from less than 10 yards.
With Bahrain having the lion's share of possession, India had to dig deep and defend.
Though Bahrain penetrated into the Indian box, the opponents did not create any serious trouble that Sandesh Jhinghan and his line could not deal with.
Even skipper Pronay Halder made a goalline clearance in the dying embers of the first half to keep Bahrain at bay.
Coach Constantine added more spark in the attack with the introduction of Jeje Lalpekhlua at the half-way point, replacing Ashique Kuruniyan.
But it still was the defensive performances of Pronay Halder and Sandesh Jhingan that provided the forwards cover and thwarted the opposition attacks.
In the 60th minute, Jhingan made a sliding tackle to deny an open goal tap-in to Bahrain forwards after a cross from the Indian right flank went unchecked.
A few minutes later, Udanta Singh got into the thick of defensive action and made a sensational tackle in the Indian box to rob the opponents of possession. Minutes before, he was brought down around the Bahrain box and the resulting free-kick was sent over the bar by Sunil Chhetri.
In the 73rd minute, Bahrain got an indirect free-kick inside the box after Gurpreet had collected a back pass but the Indian defence line saw out the free-kick, flinging bodies to keep the ball out of the goal.
The India custodian pulled off a superb save in the 83rd minute to deny Bahrain from a close-range header, following a corner kick, and Pritam Kotal blocked the resulting shot.
Jamal Rashed scored from the spot in the dying embers of the game to hand Bahrain a last gasp win after Pronay Halder brought Hamad Al Shamsan down in the box.