Bayern jumped into a 2-0 lead through Thomas Muller and Mario Gotze inside the first 12 minutes.
David Silva pulled a goal back before half-time before an Aleksandar Kolarov penalty and Milner's 62nd-minute strike completed an unlikely comeback.
While City were unable to push on for another goal which would have seen them displace Bayern at the top of the group, Milner said the performance revealed they have the quality and desire to make an impact in the knock-out stages.
"It says a lot about the dressing-room and the character of the players," he told Sky Sports 2.
"It was a terrible start and we gave away some sloppy goals.
"But to go to a place like this and go 2-0 down and then come back and win shows the character in this dressing-room.
"It was not enough to win the group but it shows the type of performance we need in the next round. We can come to a place like this and score goals.
"We wanted a bit of revenge after the first game (which City lost 3-1). It will give us a lot of belief. We will come up against a good team like Bayern (in the next round)."
Despite City needing just one more goal to steal first place in the group boss Manuel Pellegrini did not turn to star striker Sergio Aguero in the closing stages.
After replacing the returning Silva with a striker, in Alvaro Negredo, his last move was to take off frontman Edin Dzeko for midfielder Jack Rodwell.
The Chilean then appeared to suggest he did not realise City needed only a further goal to go through as group winner - and avoid the likes of Real Madrid and Paris St Germain - when asked why Aguero was not used.
"I was tempted if we score the fourth goal," he said.
"It was risky to continue with Silva. He can't play more than 75 minutes. It was important to be first in the group but not the most important.
"It was difficult to score two goals and I think that Silva can't play more than 75 minutes."