Early goals at the start of each half from Mehdi Taremi and Moussa Marega saw Porto beat Juventus 2-1 in their Champions League last-16 first-leg tie on Wednesday.
Taremi gave Porto the lead after just 63 seconds when a defensive mix-up from the visitors gifted him an easy finish. Moussa Marega then netted 19 seconds into the second half.
Federico Chiesa scored what could prove to be a vital away goal for Juventus in the 82nd minute.
Juve forward Cristiano Ronaldo was kept quiet on his return to his homeland as the visitors struggled to make an impact.
- How the teams lined up | Match stats
- Champions League last 16 lowdown
- Champions League news | Fixtures | Tables
- Get Champions League from BT Sport on Sky
Juventus beat Porto home and away without conceding a goal the last time the two sides met at the same stage four years ago.
But they gifted Porto the lead after barely a minute when midfielder Rodrigo Bentancur attempted to play a back pass to goalkeeper Wojciech Szczesny, not realising Taremi was right behind him to intercept and slot home from six yards.
Juve appeared to lack energy and ideas and their night got worse in the 35th minute when captain Giorgio Chiellini limped off with a calf injury.
Porto were even quicker off the mark at the start of the second half when Wilson Manafa ran down the right before rolling across for Marega to turn in at the near post.
Juve coach Andrea Pirlo brought on forward Alvaro Morata shortly after the hour mark. Morata had scored six goals in as many Champions League appearances this season and his side looked more dangerous after he came on.
Porto hadn't conceded a goal at home in the Champions League this season but that streak came to an end when Adrien Rabiot burst down the left and crossed for Chiesa to fire into the far corner.
Chiesa became the first Juventus player apart from Ronaldo to score in a Champions League knockout game since Blaise Matuidi in 2018.
The second leg will be on March 9 in Turin.
- Porto secured their first ever competitive victory against Juventus in European competition, having failed to win any of their first five encounters with them (D1 L4).
- Juventus have lost three of their last four Champions League knockout matches (W1), as many as in their previous 14 such games combined (W8 D3 L3).
- Mehdi Taremi's goal after 61 seconds was the quickest scored in the UEFA Champions League knockout stages since David Alaba for Bayern vs Juventus in April 2013 (24 seconds).
- Tonight Juventus named their youngest starting XI in a UEFA Champions League knockout match (27y 122d) since the 1997/98 final versus Real Madrid (26y 353d).
Champions League key dates
Round of 16 second legs: March 9/10/16/17
Quarter-final and semi-final draws: March 19
Quarter-finals first legs: April 6/7
Quarter-finals second legs: April 13/14
Semi-finals first legs: April 27/28
Semi-finals second legs: May 4/5
Final: May 29 (Atatürk Olympic Stadium)