Milner scored from the spot shortly before the break
England reached the play-offs for the 2009 European Under-21 Championship as goals from James Milner and Gabriel Agbonlahor defeated Portugal.
Milner's 44th-minute penalty put Stuart Pearce's side ahead in their first competitive fixture played at Wembley.
And Milner's new Aston Villa team-mate Agbonlahor fired in the second to ensure England finished convincing winners of Group Three.
Agbonlahor, who defied a stomach bug to play, was named man of the match.
He was substituted in the 76th minute having tormented Portugal's defence in the torrential rain.
Milner, who joined Villa from Newcastle for £12m in late August, converted from the spot after Paulo Machado clattered into Bolton midfielder Fabrice Muamba.
Agbonlahor, passed fit before the game, doubled the lead after latching onto a pass from West Ham's Mark Noble and sprinting into space before slotting the ball underneath Portugal goalkeeper Patricio.
England U21 coach Stuart Pearce:
"We knew from the offset that this would be the most difficult campaign anyone has to go through to reach a finals.
"But if we can get through the play-offs we know there are only seven teams standing in our way in Sweden next summer.
"Our first port of call was to get through this group, which we knew would be tough and proved to be so.
"We've got out the group and now we'll wait on next Friday's draw to see where that takes us.
"We're pleased we've topped the group but it means nothing to us at the moment. We want to win the tournament next summer."
England U21: Hart, Cranie, Steven Taylor, Mancienne, Andrew Taylor, Huddlestone, Muamba (Cattermole 56), Noble, Milner, Adam Johnson (Kightly 86), Agbonlahor (Campbell 76).
Subs Not Used: Heaton, O'Hara, Stearman, Lennon.
Booked: Muamba, Andrew Taylor, Cattermole.
Goals: Milner 44 pen, Agbonlahor 63.
Portugal U21: Rui Patricio, Bruno Pereirinha, Vasco Fernandes, Nuno Andre, Goncalo Brandao, Fernandes, Veloso, Paulo Machado (Stelvio Cruz 71), Vieirinha (Candeias 59), Vaz Te, Bruno Gama (Joao Moreira 46).
Subs Not Used: Ricardo Batista, Helder Barbosa, Miguel Lopes, Daniel Carrico.
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.