Oliver Hawkins scored the winning penalty as Portsmouth claimed a 5-4 shootout victory against Sunderland in the final of the Checkatrade Trophy.
Midfielder Lee Cattermole saw the Black Cats' second penalty saved by Craig MacGillivray as an entertaining final was decided on spot-kicks following a 2-2 draw after extra time.
A crowd of 85,021 – a record for the EFL Trophy final – saw Aiden McGeady's free-kick put Sunderland ahead in the first half, before Nathan Thompson levelled with a stooping header eight minutes from the end of normal time.
In a lively second period of extra time, Jamal Lowe's stunning lob put Pompey in front, only for McGeady to slot in a last-gasp equaliser.
Penalty drama followed and Portsmouth were faultless, scoring all five to ensure they lifted the trophy.
Sunderland posed more of an attacking threat in the opening stages, with Lewis Morgan testing MacGillivray for the first time with a well-struck volley in the 21st minute.
McGeady was pulling the strings for the Black Cats and won the free-kick from which he opened the scoring in the 38th minute.
The Republic of Ireland international's curling strike took a slight deflection off the shoulder of Omar Bogle and that was enough to take it out of MacGillivray's reach.
Portsmouth started the second half with fresh impetus and Bogle saw a header blocked on the line by defender Reece James, although the whistle had already gone for a foul against the forward.
Brett Pitman came agonisingly close to an equaliser on the hour when he controlled a Lowe knock-down and fired a shot against the base of the right-hand post.
Pompey substitute Gareth Evans neatly beat his marker and raced forward before drilling a shot wide with just over 10 minutes remaining.
And he played a part in a deserved equaliser shortly afterwards, standing up a cross to the back post for Thompson to power in a header.
Portsmouth thought they had won it with six minutes of extra time remaining when Lowe controlled a long ball forward and lobbed goalkeeper Jon McLaughlin.
But there was still time for Sunderland to snatch an equaliser and send the game to penalties as McGeady controlled Charlie Wyke's lay-off, beat his marker and slotted past the keeper.
After Cattermole was denied by the keeper, it eventually fell to Hawkins to win it for Portsmouth and he duly obliged.
ga('create', 'UA-72310761-1', 'auto', {'name': 'pacontentapi'});
ga('pacontentapi.set', 'referrer', location.origin);
ga('pacontentapi.set', 'dimension1', 'By Press Association Sport staff');
ga('pacontentapi.set', 'dimension2', 'f19b561c-c120-47c5-88ab-23e7557b330a');
ga('pacontentapi.set', 'dimension3', 'paservice:sport,paservice:sport:club-news,paservice:sport:football,paservice:sport:match-reports');
ga('pacontentapi.set', 'dimension6', 'story');
ga('pacontentapi.set', 'dimension7', 'composite');
ga('pacontentapi.set', 'dimension8', null);
ga('pacontentapi.set', 'dimension9', 'sport:football');
ga('pacontentapi.send', 'pageview', { 'location': location.href, 'page': (location.pathname + location.search + location.hash), 'title': 'Portsmouth beat Sunderland on penalties to clinch Checkatrade Trophy'});