Manchester United conceded a dramatic stoppage-time goal as they lost to Young Boys despite Cristiano Ronaldo scoring on his Champions League return for the Red Devils.
Ronaldo, who became the joint all-time Champions League appearance holder on his 177th appearance in the competition, fired United ahead after an exquisite pass from fellow Portuguese Bruno Fernandes.
United played for almost an hour with 10 men after Aaron Wan-Bissaka's dangerous challenge on Christopher Martins earned the defender a straight red card.
They looked set to hang on for a point in an entertaining match after Cameroon winger Moumi Ngamaleu's equaliser.
But a 95th-minute mistake by substitute Jesse Lingard - who had replaced Ronaldo with 18 minutes left - allowed Jordan Siebatcheu to score the winner for the team that had to come through qualifying to reach the group stage.
The home fans celebrated wildly while Ole Gunnar Solskjaer was left to reflect on a performance which saw United muster just two shots, the fewest Opta have on record in any of their 138 Champions League matches since 2003-04.
Having missed out on qualifying for the knockout stages of the competition last season, United now host Villarreal in their next Group F game on 29 September in a repeat of last season's Europa League final.
Red card & late error cost United
Having spent £120m on three major signings in the summer, United will have hoped to have come away with more than a hard luck tale against the Swiss champions.
But Wan-Bissaka's dismissal - and Lingard's late error - left them reflecting on a seventh defeat in 11 Champions League matches under Solskjaer.
Up until Wan-Bissaka's first red card since 2018, United were in reasonable control and leading after a lovely goal made in Portugal.
Having scored twice on his second debut for United against Newcastle last Saturday, Ronaldo has three goals in two appearances since re-signing from Juventus.
More importantly, the all-time Champions League top scorer now has 135 goals in the competition.
Young Boys keeper David von Ballmoos will feel he should have kept it out, but the pass by Fernandes with the outside of his right foot was simply divine.
Wan-Bissaka's red card prompted Solskjaer to reshuffle his side with expensive summer recruit Jadon Sancho replaced by Diogo Dalot.
Having defended their lead up until half-time, Solskjaer then replaced Donny van de Beek, who was making his first start of the season, with Raphael Varane and switched to five at the back in an attempt to shore up the defence.
It did not work as the home side, full of energy and spurred on by a raucous crowd, eventually made their pressure tell.
After Ngamaleu's equaliser, De Gea was forced to tip Sandro Lauper's 30-yard attempt over the bar before Lingard's attempted pass back fell well short allowing Siebatcheu to earn Young Boys a famous win.