With the reigning Premier League champions trailing Liverpool by seven points coming into the match at the Etihad Stadium, a victory seemed all but required to keep the Reds from running away with the title.
A goal from Sergio Aguero opened the scoring late in the first half, while Leroy Sane struck the winner in the second half after a Roberto Firmino goal had pulled Liverpool level.
The victory shrinks Liverpool’s lead at the top down to four points after 21 games, with Man City also moving back into second place ahead of Tottenham.
Silva picked up the assist on Aguero’s opener and was all over the field, tracking an incredible 13.7 kilometres (8.5 miles) over the course of the match.
That distance is actually the most by any player in a Premier League game this season.
And Guardiola spoke about Silva following the contest, praising the completeness of the midfielder’s performance and hailing how well he did against the likes of Liverpool’s star defender Virgil van Dijk.
“Bernardo Silva did everything,” Guardiola told reporters. “He is the smallest one but shows us that to play football you don't have to be taller or more physical.
“He is incredible. I haven't seen performance like that in a while. It was clean and clever. Against Van Dijk he was comfortable.”
13.7 - Bernardo Silva covered 13.7 kilometres (8.5 miles) against Liverpool, the most by any player in a Premier League game this season. Endurance. pic.twitter.com/QTZewXE1mn— OptaJoe (@OptaJoe) January 3, 2019