It all looked so good after goals from Younes Kaboul and Kanu had given Pompey a commanding lead but one incorrect decision by the referee and a stunning free kick from Ronaldinho changed everything.
It just seemed inevitable after that goal that we'd concede another late on and a jubilant Fratton Park was silenced by Pippo Inzaghi's stoppage time equaliser that the Milan players celebrated as if they'd just won the UEFA Cup itself.
It was a game full of drama and plenty of chances for both sides as Pompey escaped an early scare after Inzaghi hit the post following Andriy Shevchenko's free kick early on and then he lobbed the ball too high over David James.
Bare-bones Pompey did take it to the seven time European champions as Peter Crouch missed a couple of good opportunities as the fans turned up the volume to create a brilliant atmosphere. The constant singing of "Tony Adams' Blue Army" will be remembered for a long time, I'm sure of it.
Milan had the better chances in the first half but Pompey had more than held their own. The second half belonged to us and after Kaboul had headed in Glen Johnson's cross the home fans were in dreamland and when Kanu tapped in the second it was almost impossible to believe that what we were witnessing was actually real.
It was so surreal, chanting things like "Can we play you every week?" and "Are you Bournemouth in disguise?" to the seven time European Champions! Pompey looked comfortable and Carlo Ancelotti was forced to substitute Andriy Shevchenko and Kaka for Alexandre Pato and Ronaldinho.
But just as it looked like we were going to claim the most famous result in our history, Ronaldinho curled in an unstoppable free kick and it seemed to deflate the fans and some were even already accepting we would blow it.
And when Inzaghi slotted in the equaliser in the 92nd minute the Fratton Park crowd were completely stunned. Where was the marking as the ball was tossed into the box? Did Tony Adams really need to change things in the last 10 minutes seeing as we were so comfortable?
I felt completely distraught that we were five minutes away from the ultimate scalp and we blew it. The poor kid two rows in front of me was close to tears as we had to settle for a draw when we should have been celebrating a memorable victory.
I've had a day to reflect on the game and I'm still completely gutted over the result, having come so close. Not just that, but looking at the bigger picture we only have one point from two games and to realistically qualify for the knockout stages we're going to have to win our last two games after Wolfsburg snatched a late 3-2 win in Braga.
Despite throwing it away, I'm proud of all of the players who played last night as they gave it their all. It's a shame we couldn't win but who knows? If we can get through the latter stages of the competition we might get another crack at them. If not, then the opportunity to beat the Rossoneri may have just passed us by for good.
And even though it may feel like a defeat, we still drew and still have a point on the board. For those who were at Fratton Park last night I'm sure they'll never forget the atmosphere and the fact we put two past the mighty AC Milan.
The most important thing is that we continue to play in the same spirit for the next important game at home to Blackburn on Sunday. If the fans have recovered from their sore throats then we must do all we can to galvanise the team to victory.
Until then, we have to look back and think what might have been...
Pompey Player Ratings
David James: 6 - No chance with goals.
Glen Johnson: 9 - Simply superb, chipped in with two assists.
Younes Kaboul: 8 - Excellent header for the goal whilst strong at the back.
Sylvain Distin: 7 - Good but struggled to keep Inzaghi quiet.
Nadir Belhadj: 8 - Excellent all round display.
Glen Little: 6 - Good on the ball.
Richard Hughes: 8 - Great performance against his boyhood club.
Papa Bouba Diop: 8 - Best game in Pompey colours.
Armand Traore: 7 - Always a danger.
Kanu: 8 - Milan defence didn't know how to handle him.
Peter Crouch: 6 - Worked hard but guilty of missing some good chances.
Sean Davis (Kanu 81): N/A - Late introduction, but was it the right decision?
Arnold Mvuemba (Little 66): 6 - Looked alright.