Man City will face Juventus and Sevilla in the Champions League group stage, while Arsenal must play Bayern, but Chelsea and Man Utd have more favourable draws.
City, who have suffered tough draws in the last four seasons of the Champions League, were selected in Group D - with last season's finalists Juventus and Europa League winners Sevilla. Bundesliga side Borussia Monchengladbach complete City's group.
Arsenal also face a tough task in Group F against Bayern Munich, who have eliminated the Gunners from the competition in two out of the last three seasons - but have more straightforward opposition from Greek side Olympiacos - who are in the middle of a match-fixing scandal - and Dinamo Zagreb from Croatia.
Chelsea boss Jose Mourinho will have a return to a former side Porto, whom he took to Champions League glory in 2003, and his side should have little trouble in Group G with Dynamo Kiev and Maccabi Tel Aviv.
Manchester United's return to the competition after last year's absence should also not trouble manager Louis van Gaal too much, with the opponents in Group B being PSV Eindhoven, CSKA Moscow and German side Wolfsburg.
In other groups, Real Madrid and PSG will meet in Group A along with Shakhtar Donetsk and Malmo.
Real forward Cristiano Ronaldo said: "It will be tough as I think this group is strong but we are going to do the same as before and try to qualify and the win the Champions League."
The holders Barcelona are in an easy-looking Group E along with Bayer Leverkusen, Roma and BATE Borisov from Belarus.
PSG, Real Madrid, Shakhtar Donetsk, Malmo.
PSV Eindhoven, Manchester United, CSKA Moscow, Wolfsburg.
Benfica, Atletico Madrid, Galatasaray, FC Astana.
Juventus, Manchester City, Sevilla, Monchengladbach.
Barcelona, Bayer Leverkusen, Roma, BATE Borisov.
Bayern Munich, Arsenal, Olympiakos, GNK Dinamo.
Chelsea, Porto, Dynamo Kiev, Maccabi Tel Aviv.
Zenit St Petersburg, Valencia, Lyon, Gent.