At various points this season Millwall looked as if they would lose their home, the unstoppable march of gentrification threatening to evict them from the New Den. But as it is, their campaign has ended with promotion to the Championship, thanks to a 1-0 win over Bradford City in the League One play-off final at Wembley on Saturday.

Their manager, Neil Harris, does not really need anything other than his playing days to confirm his status as a Millwall legend but this adds a delightful layer of polish. Perhaps the only man to rival his hero status with the fans, Steve Morison, scored the only goal of a tense, scrappy but often thrilling game with five minutes to go. “If I need a hero, I always have Steve Morison,” said Harris after the game. “You have to have a focus, a leader on the pitch, a main man.”

At the final whistle a few hundred Millwall fans ran on to the pitch, some simply trying to celebrate with their players but others with rather more unpleasant intentions. Morison said that “ruined” the day for him but the rest of the players did not seem to share his emotions as they celebrated wildly, perhaps in the knowledge that they had ground out a victory after being second-best for most of the game.

In many respects the game echoed Millwall’s season as a whole, when they squeezed into the play-off places, some six points behind their opponents at Wembley, but came out on top in the end. This final last season also saw them outplayed, that time by Barnsley when they were beaten 3-1, but this time they managed to stay in the game long enough for Morison’s striketo win it. “To bounce back from last season shows enormous camaraderie,” Harris said. “When we’ve needed a performance, a moment, my players have produced it.”

As is frequently the case in games like this, the action started at the sort of uncoordinated, frantic pace with which anyone who has organised a kids’ birthday party will be familiar. The best chance of the early stages fell to Bradford when the sparky Mark Marshall fed a perfect pass through to Billy Clarke who, when clean through, attempted a delicate dinked finish; but Jordan Archer brilliantly tipped the ball round a post. From that point Bradford dominated, looking more composed as it seemed Millwall would repeat their disappointment from last season. When Morison, one of the last great warhorses, swung at a rare chance on the turn and kicked air, it seemed to sum up Millwall’s first half.

After a burst of action about 15 minutes into the second half, the game became scrappier: fatigue became obvious, nerves grew and the fear of making a mistake rose. Morison had a shot blocked in the area by Rory McArdle, then at the other end James Meredith headed just wide. Cramp spread in the legs of players as quickly as tension in the stomachs of fans.

Then, with five minutes to go, the goal finally arrived. Shaun Williams crossed from the left, Lee Gregory flicked on to the back post and Morison found enough space to crash the ball into the roof of the net. Replays showed that Morison’s head was just in front of the last defender: technically the goal should have been disallowed but laser-guided eyesight from the linesman would have been required to spot the offside. Morison was involved in all of the four goals Millwall scored in this season’s play-offs, getting three and setting up the other. His manager’s words of praise were well-earned.