Daryl Impey won stage four of the Tour de Suisse after a photo finish with Australian Michael Matthews ©Getty Images

South African Daryl Impey edged out Australian Michael Matthews to take the fourth stage of cycling's Tour de Suisse after a photo finish to crown an emotional comeback.

Impey, riding for Israel Premier Tech, won the 191 kilometre stage from Grenchen to Brunnen to claim his first WorldTour stage victory since the 2019 Tour de France, but was given an identical time with Matthews of BikeExchange-Jayco, after both clocked 4:14:09.

Impey had fought back after a crash last year left him with a broken pelvis which put him out of the Tokyo 2020 Olympics.

"To finally pull off a victory after all of the hard times is special," Impey admitted.

"After everything that happened last year, I didn’t know if I was going to get back on top of the step,

"I had great support from the team and from my family at home. I’m really happy to win."

Welsh rider Stephen Williams of Bahrain Victorious, remains the overall leader but only after he recovered having briefly lost contact in the climb over the Sattle in the closing stages.

In the general classification, Williams leads Danish rider Andreas Kron of Lotto Soudal by six seconds, with another Welshman, Ineos Grenadiers' Geraint Thomas seven seconds behind in third.

The riders leave the German speaking cantons for the 193 kilometre fifth stage which starts in the village of Ambri and heads to Novazzano.

The race is set to finish in Vaduz, Liechtenstein on Sunday (June 19).