By Gabriel Tan at the Shah Alam Stadium
Norshahrul twice put his side ahead in the 44th and 50th minute respectively, but on both occasions, the Armed Forces hit back with strikes from Rezal Zambery and Marlon Alex James.
With neither side able to find a third in the remainder of the 90 minutes, the game then went to extra-time, where Indra Putra Mahayuddin proceeded to net what proved to be the winner in the 97th minute.
It was a fitting end to what has been a dominant season by Bojan Hodak's men, who had already celebrated success in the Super League and FA Cup earlier in the year.
And while they may have been installed as slight favourites for Saturday's decider, they certainly had to do it the hard way with key duo Mohammed Ghaddar and Norfarhan Muhammad, who had combined for seven of their 20 goals in the competition, were suspended after picking up bookings in their semi-final second leg win over Selangor.
Replacing Norfarhan had been simple for Kelantan coach Bojan Hodak, given captain Badhri Radzi was ready to reclaim his place in the side after starting on the bench against Selangor following an eye infection.
Ghaddar however spent much of the season being their focal point in attack and Hodak made the bold move to name on-loan striker Afiq Azmi in his starting XI.
Six minutes in, the Croatian tactician's gamble almost paid off when Afiq climbed highest at the far post and met a Daudsu Jamaluddin cross with a powerful header that forced Farizal Harun into a flying save.
Seven minutes later, his strike partner Norshahrul had a chance of his own after he nipped in and stole the ball from Amirizwan Taj Tajuddin inside the ATM box, but just failed to keep his snapshot on target.
The Malaysia international was certainly looking very lively early on and in the 15th minute, Farizal did well to deny him from close range after he went on a jinking run and left two opposition players in his wake before firing a shot away.
Norshahrul then wasted an excellent chance to break the deadlock seven minutes later when Shakir Shaari's mishit shot rolled straight into his path. But with no opponent near him and from just 12 yards out, he decided to go for a first-time shot and completely missed the ball.
Farizal, who had been the hero for ATM in their semi-final second leg penalty shootout win over LIONSXII, had a nervous moment in the 39th minute when he spilled a 35-yard freekick by Indra Putra but thankfully for him, no Kelantan player was on hand to capitalise.
Nonetheless, there was to be no denying the Red Warriors five minutes later as another error from Farizal proved costly this time around. Picking up possession down the right, Norshahrul exchanged a couple of neat passes with Badhri Radzi before forcing his way into the box and striking a tame shot that slipped through the ATM custodian's hands before trickling into the back of the net.
Taking the lead was no less than Kelantan deserved considering they had dominated proceedings for much of the opening period, but four minutes after the break, they were left stunned as ATM equalised with their first real sighting at goal when Rezal met a clearance on the edge of the area with a ferocious strike that sailed past a hapless Khairul Fahmi.
However, parity was restored for only a minute as the Red Warriors went straight up the other end and scored again through Norshahrul, who broke free down the left and cut inside K. Reuben before drilling in a shot that was deflected past Farizal.
Eight minutes later, Farizal made amends for his first-half error when he tipped over a freekick from Badhri Radzi before it could dip in under the crossbar, and his save proved vital two minutes after the hour mark when Marlon James made it 2-2, meeting a good delivery from Rezal and planting a firm header into the back of the net.
Substitute Venice Elphi, who had won the freekick that led to the Armed Forces' second, was beginning to cause real problems down the left and in the 69th minute, latched onto a neat pass by Martelotto and skipped past Nik Shahrul Azim, only to fire straight at Fahmi.
With the tie evenly poised and with time fast running out, both sides began to play more cautiously, which saw the chances at both ends dry up.
Zaquan Adha had one final chance to end the game at the death when he burst down the right and raced into the box, but Fahmi once again did enough to deny his opponent and force the game into extra-time.
Five minutes in, Zaquan's twin brother Aidil Zafuan wasted a good chance when he ventured forward for a set-piece and was picked out unmarked by Reuben's pinpoint delivery, only to send his header way over.
Two minutes later, Kelantan took the lead for the third time in the game when Indra Putra latched onto a killer ball by Badhri and made his way into the box, before expertly guiding his shot over the onrushing Farizal and into the back of the net.
In what would have been another thrilling twist to the game, ATM then had the ball in the back of the net a minute later when James bundled home from close range after Fahmi could only parry a vicious strike by Zaquan to him, but the goal was rightfully chalked off by the linesman's flag for offside.
And with ATM unable to find a third to bring the game to penalties, it was Kelantan who were left celebrating their third trophy of 2012 when the final whistle blew.
ATM: Farizal Harun, K. Reuben (A. Varanthan 101'), Aidil Zafuan, Amirizwan Taj Tajuddin, Azmi Muslim (Fitri Omar 60'), Rezal Zambery, Hairuddin Omar, Zaquan Adha, Bruno Martelotto, D. Christie Jayaseelan (Venice Elphi 60'), Marlon Alex James.
Kelantan: Khairul Fahmi, Nik Shahrul Azim, Obinna Nwaneri, S. Subramaniam (Rizal Fahmi 49'), Daudsu Jamaluddin (Mohamed Aslam 111'), Indra Putra Mahayuddin, Shakir Shaari, Badhri Radzi, Nurul Azwan Roya, Norshahrul Idlan Talaha, Afiq Azmi (Mafry Balang 83').