Ben Hermans does the double atop the grueling North Salt Lake climb
Hermans followed wheels up the tough North Salt Lake finishing climb and attacked just before the top on the final ascent to solo to the finish
Today's 86 mile stage was fast and hot.
Six riders went away in the breakaway containing Alex Howes (EF Education First), Nigel Ellsay (Rally UHC), Lorenzo Fortunato (Neri Sottoli Selle Italia KTM), Marco Canola (Nippo-Vini Fantini-Faizane) and Travis McCabe (Worthy Pro Cycling).
Alex Howes took the first KOM , meanwhile Elevate-KHS led the chase for Piccoli.
The third time up the finishing climb and Canola and McCabe were dropped but got back on the descent.
McCabe was dropped again on the next lap of the finishing climb.
Howes pressed on with McCormick, Canola and Forunato.
In the dwindling peloton, Lawson Craddock (EF Education First) was the first to attack, follwed by Kyle Murphy (Rally UHC) and they caught the leaders with 12 kms to go, as Fortunato cracked.
Back in the ever dwindling peloton, Trek-Segafredo riders put in masive turns to, bring the gap down to 20 seconds.
On the final climb, Murphy and Craddock were the only two left out front.
Behind James Piccoli (Elevate-KHS), Keegan Swirbul (Worth), Niklas Eg (Trek-Segafredo) and Joe Dombrowski (EF Education First) and race leader Ben Hermans were all that was left of the peloton.
Piccoli attacked and nearly reeled in the two lone leaders with 2 kms to, Craddock sensed the catch and attacked and dropped Murphy.
Ben Hermans, who had been following Piccoli's wheels all day, put in a huge counter attack just before the top of the final ascent, passing Murphy and Craddock to descend down the final 1.2km solo to the finish.
A master stroke of strategy, conserving his energy with a late attack that no one could counter, giving Hermans two back-to-back wins.
VIDEO: 2019 Tour of Utah Stage 3 Highlights
2019 Tour of Utah Stage 3 Top 10
1 Ben Hermans (Bel) Israel Cycling Academy 3:20:27
2 Kyle Murphy (USA) Rally UHC Cycling 0:00:07
3 Niklas Eg (Den) Trek-Segafredo 0:00:08
4 Keegan Swirbul (USA) Worthy Pro Cycling
5 James Piccoli (Can) Elevate-KHS Pro Cycling 0:00:09
6 Lawson Craddock (USA) EF Education First 0:00:11
7 Joe Dombrowski (USA) EF Education First 0:00:21
8 Matteo Badilatti (Swi) Israel Cycling Academy 0:00:36
9 Scott Bowden (Aus) Team Bridgelane
10 João Almeida (Por) Hagens Berman Axeon 0:00:42
2019 Tour of Utah GC after Stage 3
1 Ben Hermans (Bel) Israel Cycling Academy 10:30:24
2 James Piccoli (Can) Elevate-KHS Pro Cycling 0:00:43
3 Niklas Eg (Den) Trek-Segafredo 0:01:05
4 Kyle Murphy (USA) Rally UHC Cycling 0:01:46
5 Peter Stetina (USA) Trek-Segafredo 0:02:02