Pakistan triumphed by 341 runs as India collapsed to be all out for 265 in the third Test at Karachi.
Pakistan batted on in its second innings to finally declare with Abdul Razzaq's dismissal for 90 at 7-599 - an overall lead of 606 runs.
Facing a minimum of 164 overs in which to save the match, India could last only 58.4 overs while scoring 265.
It was saved from total ignominy by Yuvraj Singh's 122 off 144 balls.
It was India's second-heaviest defeat behind the 342-run loss to Australia at Nagpur two years ago.
Initially, it was fast man Shoaib Akhtar who provided the breakthrough when taking the edge of Indian captain Rahul Dravid's bat.
Virender Sehwag then followed at the same score, eight, as India was rocked in the worst imaginable way.
Mohammad Asif stepped up for the home team to add VVS Laxman (21) and Sachin Tendulkar (26) to his scalps.
Asif was able to find plenty of movement from the pitch to have all the batsmen struggling and ended with 3-48.
Wickets may have been falling but there was no loss of scoring momentum as Ganguly and Yuvraj took full advantage of attacking fields. It was high-risk cricket but understandable under the circumstances.
They added 103 runs for the fifth wicket, Yuvraj scoring his half-century off 45 balls. But into the final session Razzaq proved the destroyer and he started by trapping Ganguly lbw for 37.
Yuvraj was dropped by Faisal Iqbal, who had batted on to reach 139 earlier in the day, when on 77 off Razzaq.
Disappointment was only temporary as Razzaq soon picked up Mahendra Dhoni, followed in short order by Irfan Pathan.
Danish Kaneria was introduced late in the innings and his leg-spin soon accounted for Anil Kumble and Zaheer Khan while Razzaq, who finished with 4-88, had the final say when dismissing Yuvraj for 122.
His 100, his second in Tests, was scored off 126 balls with 17 fours.