Sergio Aguero's late equaliser booked City's place in the last 16, but they had to work hard for their point against the dangerous French side.
Maxwel Cornet's double looked to have put Lyon in pole position in Group F heading into the final matchweek, with Aymeric Laporte having cancelled out the winger's 55th-minute opener.
But just two minutes after Cornet's second, City responded again – Aguero rising highest to head home from a corner and punish the hosts for some wasteful first-half finishing.
Lyon inflicted a surprise defeat on City in the first game of the group in September and Guardiola was full of praise after another high-quality display from Bruno Genesio's side.
"We are so delighted and so happy," he told BT Sport.
"They're one of the toughest teams I have ever faced. They're physical, they're strong and their counter-attacking is incredible.
"People say the French league is just PSG, but they are so wrong.
"Always in my career when I play against French teams, they are so physical. That's why they're world champions. They all have quality, they don't lose the ball, they're so strong and they're fast.
"It's so complicated which is why I give lots of credit to my team."