Thursday's draw in Monaco put Barcelona in Group H with Milan, Ajax and Celtic — four teams who have been European champions 16 times between them.
Barcelona and Milan were grouped together in 2011-12 and then met in the quarterfinals, before facing each other in the round of 16 last season. Barcelona won three of the six encounters and drew two of them.
"You never get easy groups in the Champions League," Barcelona forward Lionel Messi said. "Of course we know Milan well and we also played Celtic last season, while Ajax have a lot of European history. So we're looking forward to some very tough, very exciting, very beautiful games."
Celtic claimed a shock 2-1 victory over Barcelona in last year's group stage.
"I think it's the best and the worst draw we could have got," Celtic manager Neil Lennon said. "In terms of glamor, it doesn't come any better but it's the most difficult we could have got."
Bayern, which beat Borussia Dortmund 2-1 in last year's final at Wembley Stadium, is in Group D along with City, CSKA and Viktoria Plzen.
"CSKA Moscow and Manchester City, in particular, should not be underestimated," Bayern chairman Karl-Heinz Rummenigge said. "It won't be a stroll for any (German) club, not for Bayern Munich either."
Dortmund is in one of the toughest groups of the tournament alongside Arsenal, Marseille and Napoli, and will be looking for revenge after finishing bottom of a group which included Arsenal and Marseille two years ago.
Real Madrid will face Juventus in another blockbuster pairing, with Galatasaray and Copenhagen joining them in Group B. Madrid is bidding for a record 10th title and lost to Dortmund in the semifinal last season, while Juventus, which lost to Bayern in the quarterfinals, has gone from strength to strength under Antonio Conte and won a second straight league title last campaign.
"Real are one of the favourites for the trophy and are also one of Juventus' historic European rivals," Conte said. "Taking on such a prestigious side will be a great motivation for us. Galatasaray are a team to be feared, they possess considerable qualities and can count on a red-hot atmosphere for their home games."
Juventus travels to Madrid on Oct. 23, before hosting the Spanish side on Nov. 5. Madrid begins its campaign at Galatasaray, which it beat 5-3 on aggregate in the quarterfinals last season.
New Manchester United manager David Moyes will get his first taste of the Champions League group stage after taking over from Alex Ferguson this summer, and the Premier League champions have been put in Group A along with Shakhtar Donetsk, Bayer Leverkusen and Real Sociedad.
Chelsea won the Champions League in 2012 but went out at the group stage last year before going on to capture the Europa League. Now managed again by Jose Mourinho and back in Europe's top competition, the team should fare better in a group consisting of Schalke, Basel and Steaua Bucharest.
Group C is made up of Benfica, big-spending Paris Saint-Germain, Olympiakos and Anderlecht, while FC Porto, Atletico Madrid, Zenit St. Petersburg and Austria Vienna are in Group H.
The first group games will take place on Sept. 17 and 18.