Portadown cut Linfield's lead at the top of the Premiership table to four points as two Matthew Paget goals earned the Ports victory at Ballymena.
Home striker James Costello was denied early on by David Miskelly before the ex-Glenavon man did nod the Braidmen ahead on 40 minutes.
Conor Downey missed a chance to extend Ballymena's lead before Paget ran through unmarked to level on 65.
Paget then blasted in a superb winner from 22 yards three minutes from time.
The victory was a massive morale-boost for the Ports after the blow of Shane McCabe's departure earlier this week.
Ironically, Paget replaced McCabe in the Ports line-up and the university student went on to become the matchwinner.
Miskelly saved well from Costello early on and the Ballymena striker then had a penalty shout turned down when he tumbled in the box.
Ballymena keeper Dwayne Nelson then saved well to deny Chris Ramsey before the home side took a deserved lead on 40 as Costello headed home after hesitation in the Ports defence.
Sean Mackle wasted a Ports chance before the break but Downey missed a glorious opportunity to extend Ballymena's lead after half-time when he fired over from eight yards.
The miss was punished as Paget levelled on 65 and then repeated the dose with his superb late strike.