England secured their passage to the semi-finals in dramatic circumstances as Surbiton forward James Tindall scored a fairytale 50th goal for the men’s hockey side four minutes from time to beat South Africa and ensure top spot in Pool B.

The European champions must now wait for the result of tonight’s much anticipated Pool A clash between India and Pakistan to know who they will face in Tuesday’s semi-final.

Sitting on 49 goals going into the match, the script was written and 27-year-old Tindall played his part faultlessly, slotting home the goal that sealed a 2-1 win and propelling England into the last four.

Having bagged a hat-trick against New Zealand on Saturday, the Surrey-born electrician was delighted with his contribution but was modest in reaction.

“The ball fell kindly for me and I got the touch I wanted. I did think the defender might get back to it but it had enough on it. It’s fantastic to get 50, we needed that, and Ash’s goal was world class.”

World Young Player of the Year Ashley Jackson had given England an early lead as he demonstrated the best of his abilities to flick the ball high into net from the most acute of angles just eight minutes in.

A series of opportunities from penalty corners were passed up by both sides before South Africa equalised from close range ten minutes into the second half.

Needing a win to go through, they pressed England hard but the men in white worked tirelessly to limit South Africa’s chances to a minimum.

With fewer than five minutes remaining the spotlight fell on Tindall. Picking up the ball in the left channel he drove into the circle and fired a shot across the goalkeeper, sparking scenes of celebration on the pitch and in the stands, which were populated by several thousand noisy spectators.

When asked afterwards whether he would prefer to meet the hosts or Pakistan in the next round, Tindall said: “To play India in this stadium with their fans would be an incredible experience but I’ve got no real preference. If it’s Pakistan then maybe the Indians will get behind us.”

England’s women also has a semi-final to look forward to. They take on Australia, seeded second behind England, at 11:00 local time (06:30 BST) on Monday.

The men’s game is at 17:30 local time (13:00 BST) on Tuesday.