Colombian striker John Stiven Mendoza compensated for his missed penalty to score in the 90th minute and claim the victory in a fluctuating contest at the Jawaharlal Nehru Stadium.
He also became the highest goal-scorer of the eight-team football tournament with 12 goals.
The match was goalless at halftime, but sprang into life after the break when Bruno Pelissari (54th minute) gave the visitors the lead with a penalty. Thongkhosiem Haokip (58th) and Joffre Mateu (88th) made it 2-1 for Goa.
But an own goal in the 90th minute from goalkeeper Laxmikant Kattimani turned the tide and an opportunistic goal from Mendoza seconds later saw Chennaiyin claim the thrilling victory.
Goa coach Zico named an unchanged side after beating Delhi Dynamos 3-0 in the second leg of the semi-final. Chennaiyin coach Marco Materazzi benched marquee Brazilian Elano, opting for attacking midfielder Bruno Pelissari in their only change in the starting line-up to the team that played in the second leg against Atletico de Kolkata.
Pelissari could have justified his inclusion on 17 minutes when he swivelled menacingly past a couple of defenders to enter the box, but inexplicably went for power instead of precision and blazed his shot wide. It was the most definite opportunity any player from either side would get in the first half.
Chennaiyin's offensive play revolved around Mendoza just as Goa's was dependant on Leo Moura. Goa's banking on the Brazilian deepened further when Dudu Omagbemi had to be substituted on eighth minutes after suffering a concussion following a clash of heads during an aerial tussle. Brazilian midfielder Jonatan Lucca replaced the Nigerian scorer.
Both teams were nervous and physical in their approach, aiming to wrestle the initiative. Mispasses were frequent and the action failed to hit any rhythm despite some dangerous pacy moves.
Goa's Rafael Coelho received one such chance but witnessed his header getting blocked on the line while the slippery Mendoza threatened with a low angular drive.
The match threatened to be a battle of attrition with both sides preferring to wait for the other to commit mistakes. Goa blinked first in the struggle when defender Pronay Halder's needless clumsy challenge brought down Mendoza to concede a penalty in the 54th.
Pelissari embodied the prevailing nervousness when his initial penalty kick was blocked by goalkeeper Kattimani but couldn't stop him from bundling in the rebound.
With the home side trailing, the pace of the action was expected to pick up a notch.
It duly happened and Goa equalised four minutes later. Second-half Substitute Thongkhosiem Haokip, in for Moura, tapped in from close range at the far post after creditably following right winger Romeo Fernandes' low centre.
The match began to open up with chances being created and wasted in equal measure by both sides. Mendoza was guilty of squandering the most clear-cut opportunity a minute after the equaliser.
He won his team's second penalty after being tumbled over by Kattimani in an one-on-one situation. But his resultant penalty was blocked by an agile Kattimani, diving to his left.
A frustrated Materazzi injected Elano in the mix on 68th to sharpen his bungling attack. Goa gained in confidence after the saved penalty and were egged on by a vociferous home support.
Joffre Mateu sent the expectant crowd into a frenzy when he curled a dipping left-footed free-kick into the corner of the net three minutes from regulation time.
It seemed it was enough for Goa to claim victory but were left stunned when Kattimani punched his ball into his own net while trying to evade an aerial challenge from Mendoza.
The home side was still to come to terms with the late shock when Mendoza delivered a hammer blow to their ambitions, capitalising on the flinching concentration of the Goa defenders.
He received a through ball and utilised his raw pace to expertly fool his marker before slotting it past an onrushing Kattimani to drive a dagger into the heart of Goa.