Thomas attacked fellow breakaway companions Zdenek Stybar (Etixx-QuickStep) and defending champion Peter Sagan (Tinkoff-Saxo) in the final four kilometres to take an impressive solo victory.
The day started with an escape comprising Dries Devenyns (IAM Cycling), Andrea Dal Col (Southeast), Sean De Bie (Lotto-Soudal), Sjoerd van Ginneken (Roompot), Sebastien Turgot (Ag2r) and Kristian Sbaragli (MTN-Qhubeka).
The six built up a lead of around 10 minutes before the mid-way point of the 218km race. The pressure then increased from the chasing peloton, and riders started falling out of the front group as their advantage was reduced, with only De Bie, Sbaragli and Devenyns left as the race hit 40km to go.
The Swiss Classics specialist was forced to abandon after a heavy crash
Soon, only Devenyns was left as a group of favourites formed behind as the race hit the key climbs of Paterberg and Oude Kwaremont. Thomas upped the pace on Kwaremont, riding clear of the peloton. The Welshman was joined by Stybar and Sagan, both sensing this to be a strong move. The three swiftly caught and passed Devenyns.
The trio worked well together, extending the gap out to 25 seconds with 30km to go. Daniel Oss and Greg Van Avermaet of BMC led the pace-setting of the chase, with other team-mates later moving up to help out. Initially, no other team helped BMC and the lead group's advantage started stretching out further.
After the last of the race's 17 climbs, Tiegemberg, the lead group continued to forge ahead. After all their work, BMC suffered a disaster as Van Avermaet crashed on a corner with 18km to go and the speed and organisation of the chase dropped dramatically.
Katusha then took up the pace-setting of the chase, but with 8km to go the group went into disarray, playing into the hands of the three leaders.
Thomas bided his time, attacking with four kilometres to go. Stybar attempted to chase, but Sagan simply could not respond. Thomas opened up a considerable gap to take a memorable win ahead of Stybar, as Sagan faded out of the top 10.
A crash took out a number of riders, most notably Fabian Cancellara (Trek Factory Racing) who suffered fractures in two vertebrae, signalling the end of his Classics season.
Racing in Northern European continues on Sunday with Ghent-Wevelgem.
E3 Harelbeke 2015, 218km (WorldTour)
1. Geraint Thomas (GBr) Sky in 5-14-57
2. Zdenek Stybar (Cze) Etixx-QuickStep at 25 secs
3. Matteo Trentin (Ita) Etixx-QuickStep at 38 secs
4. Alexander Kristoff (Nor) Katusha
5. Sep Vanmarcke (Bel) LottoNL-Jumbo
6. Matti Breschel (Den) Tinkoff-Saxo
7. Jurgen Roelandts (Bel) Lotto-Soudal
8. Jack Bauer (NZl) Cannondale-Garmin
9. Jens Keukeleire (Bel) Orica-GreenEdge
10. Daniel Oss (Ita) BMC Racing Team at same time
Thank you for reading 5 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