Pep Guardiola's side, who gave valuable experience to 18-year-old Phil Foden, dominated the second half and Sane could have had a hat-trick had he not passed up another shooting chance.
"We are playing against one of the best teams in the world with some of the best players in the world but everything is possible".
City struck the goal frame twice before equalizing when Sane stepped up to send a powerful, dipping free kick past goalkeeper Oliver Baumann in the first minute of stoppage time.
City rode their luck for 16 minutes until Aymeric Laporte pushed over Benjamin Hubner six yards from goal and conceded a penalty.
Highly-rated teenager Foden shone in midfield, particularly as City took firm charge of the game in the second half, having been given a long-awaited opportunity by Guardiola following a spate of injuries.
Baumann also denied Jesus after the Brazilian was played in by a Sterling backheel but the keeper could do nothing after another quick counter-attack on the hour.
"We are going into a really tough game".
Sane says he had never scored a free-kick before
The point was enough to put Bayern into the last 16 as group winners on a bad-tempered night in Amsterdam with five goals, two penalties and two red cards in an action-packed second half.
They should have added to the lead after the break when Raheem Sterling broke clear from the edge of the area with Sane and Bernardo Silva in support. However, Sane made amends moments later when, following another break, he took the ball past Baumann and slotted in.
"Phil was incredible the way he played", Guardiola told a news conference.
"He looks skinny, not strong, but he's really really strong".
"I don't think I will ever have doubts about the guy".
"We have 15 players available, so rotating, I can not do it too much".
"He's an outstanding young player, England has a diamond", Guardiola said after the match, according to BT Sport.
"It was incredible how they created, even though they had 10 players for more than 30 minutes".