The English side beat the Portuguese giants in a penalty shootout after playing 1-1 on aggregate.
Arsenal, who had scored 21 goals in their last five Premier League games, were strangely subdued in attack.
Julen Lopeteggui replaced Bruno Lage, who was sacked by Wolves last month.
Mohamed Salah scored from the spot kick in the second half to secure the victory for the Reds and send them into the second position in the group.
A first half goal by Chelsea’s record signing, Kai Havertz, was enough to deny the Citizens their first champions League trophy.
Tonight’s loss however handed Thomas Tuchel his first loss in competition as Chelsea manager.