The Slovakian had made it into a three-man move up the steep side of the Kemmelberg climb about 34km from the finish with Sep Vanmarcke (LottoNL-Jumbo) and Fabian Cancellara (Trek-Segafredo). They were joined by Vyacheslav Kuznetsov (Katusha) who had already been out front on his own.
The quartet then worked together well to quickly put a gap of around 20 seconds between them and the quickly diminishing chase group, led by Etixx-Quick Step. Their rider, Zdenek Stybar, along with Luke Rowe (Team Sky) and Greg Van Avermaet (BMC), had narrowly missed out on making it into the break after closely following the trio up the Kemmelberg.
That gap quickly grew though, with the chasers, with Britain's Rowe making several efforts to get across, unable to bring it much below 40 seconds until the leading riders began to slow down and look at each other in the closing kilometre.
The Russian Kuznetsov was the first to make his move for the line amongst a more proven set of classics riders, but Sagan quickly latched on to his wheel and held of Vanmarcke and Cancellara, who finished second and fourth respectively with Katusha man in third.
The win will prove a relief for Sagan, who has found it difficult to get the wins he craved in the rainbow bands, coming short already this year in the likes of Tirreno-Adriatico and E3 Harelbeke last Friday.
The race overall had been a fairly sedate affair, with the wind playing less of a havoc this year than it did in 2015.
The first major move was at around 155km to go, as a ferocious pace forced the peloton to split into two major groups with a breakaway already out front.
Watch: Sagan 'bluffed' his way to Ghent-Wevelgem win
The front of the split saw most major contenders for the race including Cancellara and Sagan make it in, but Vanmarcke had to utilise his LottoNL-Jumbo teammates to work hard to bridge over.
Eventually everything came back together with the break caught, but the early efforts had seen a lot of riders already dropped before the race reached it's most difficult points.
Things then remained relatively calm as the riders took on the major climbs of the course, with several attempts by riders to get away. But the race didn't really kick into action until they hit the steep side of the Kemmelbeg, which reaches a maximum gradient of more than 28%.
Sagan showed his strength as he led the group over the climb, with Cancellara and Vanmarcke close behind.
A split then formed with Rowe and Van Avermaet chasing hard, but no Etixx rider, including Tom Boonen, was able to really keep up on the climb, with Stybar making his effort to get across on the descent.
It proved to be the decisive moment of the race, and while Sagan wasn't able to make the most of a similar situation at Friday's E3 Harelbeke, he was able to finally break his 2016 duck and take a second career victory at the Ghent-Wevelgem.
Ghent-Wevelgem 2016 (242.8km)
1. Peter Sagan (Svk) Tinkoff
2. Sep Vanmarcke (Bel) LottoNL-Jumbo
3. Vyacheslav Kuznetsov (Rus) Katusha
4. Fabian Cancellara (Sui) Trek-Segafredo
5. Arnaud Démare (Fra) FDJ
6. Fernando Gaviria (Col) Etixx-Quick Step
7. Jurgen Roelandts (Bel) Lotto-Soudal
8. Jacopo Guarnieri (Ita) Katusha
9. Greg Van Avermaet (Bel) BMC
10. Michael Morkov (Den) Katusha
Thank you for reading 20 articles this month* Join now for unlimited access
Enjoy your first month for just £1 / $1 / €1
*Read 5 free articles per month without a subscription
Join now for unlimited access
Try first month for just £1 / $1 / €1