Zaniolo bags brace as Roma claim first-leg win over Porto
The 19-year-old got his first ever Champions League goal in the 70th minute in Rome, adding a second six minutes later to inflict a first defeat on Porto in this year's top-tier European competition.
But Adrian Lopez pulled a vital goal back for the Portuguese club after 79 minutes to ensure they remain in the hunt going into their home leg on May 6.
"It's an incredible night, I'm speechless and never would have expected such a thing," Zaniolo told Sky Sport Italia.
"But we've got the second leg coming up, we shouldn't have conceded the goal."
The night belonged to the youngster from Tuscany who has become a fan favourite since arriving from Inter Milan, where he never played a top-flight game, in exchange for Radja Nainggolan last summer.
On Tuesday, he was given an ovation by an ecstatic home crowd who see him as the heir to club legend Francesco Totti.
The match sparked into life midway through the second half as Zaniolo netted with a precise finish after Edin Dzeko's lay-off.
He soon had his second when Dzeko went on the counter-attack, his shot bouncing off the post with Zaniolo on hand to tap in the rebound.
"Celebrating under the 'curva' is an extraordinary feeling," said Zaniolo. "I can't describe it. I hope to score many more."
"Zaniolo is not a surprise any more," said Roma captain Daniele De Rossi.
"His physical strength is incredible for a guy of his age and he combines it with great technique.Â He is already a great player, but he will become a great champion."
Eusebio Di Francesco's Roma, last year's semi-finalists, had fallen to the Portuguese club in both their previous meetings, most recently the 2016 play-off round in qualifying.