The Ghanaian's goal was a crucial intervention for the Black and Gold, who came from behind to win all three points at MAPFRE Stadium.
It was his second goal in 26 season appearances.
After a barren first-half, the visitors were the side to break the deadlock as Ismael Tajouri-Shradi beat an offside trap to slot a shot past goalkeeper Zack Steffen in the 53rd minute.
Afful, however, drew parity for the home side on 61 minutes. After seeing his initial long-range shot blocked, the right-back would not be denied on the rebound as his powerful drive flew past goalkeeper Sean Johnson.
Justin Meram then grabbed the winner two minutes later with a header after Pedro Santos sent in a corner.
The result has put Crew fourth on the Eastern Conference table, one place below City.
"It was great. It was important," Crew sporting director and head coach Gregg Berhalter said of Afful's goal after the game.
"To score seven minutes after they score, good answer.
"He’s another one that worked really hard, was getting into attacks, had some close calls, some dangerous plays, and was rewarded with that goal. So, I think it’s big."
Afful's compatriots and club mates Jonathan Mensah and Lalas Abubakar also lasted for the entire duration of the game.
Black Stars midfielder Ebenezer Ofori, however, missed the game for City due to suspension.