The Italian bolstered his growing reputation in the Classics with a strong ride which saw him power his way into an elite group of contenders.
Moscon was forced to ride back to the head of the Belgian one-day Classic after a huge crash blew a hole in the race with over 100 kilometres still remaining.
No less than five Team Sky riders were held up by the crash, which entirely blocked a narrow section of road. Moscon found himself chasing back alongside team-mates Dylan van Baarle, Owain Doull and Christian Knees. Kristoffer Halvorsen was also held up by the crash, which saw Michal Golas narrowly avoid the carnage.
The climb of the Taaienberg produced a decisive moment in a stretched race, with Quick-Step Floors team riders Niki Terpstra and Yves Lampaert pushing clear on the steep cobbled berg.
A regrouping behind brought fresh attacks, and a spirited Moscon dragged himself over the Paterberg and Oude Kwaremont to put himself right in contention. With Lampaert caught, Moscon was among those who tried to attack on the final run into Harelbeke, but with the cream of Classics talent marking each other out Terpstra was able to hold on, eventually coming home 20 seconds ahead of the chasing pack.