Goalkeeper Andy Clarke saved a penalty and Garry Duckett hit a hat-trick for Marston Saints as they twice fought back to beat Kennington in a seven-goal thriller in Oxfordshire Senior League Premier Division.

Jay Morris fired Kennington ahead and although Duckett levelled, Morris got a second.

Marston then equalised through Jason Hallett.

After the break, Duckett gave Marston the lead with his second, with Andy Dyer again bringing Kennington were set up a nail-biting last 20 minutes.

Duckett then completed his hat-trick to make it 4-3, only for Morris to be handed the chance to wrap up his treble when Kennington to be awarded a controversial penalty. However, Clarke saved his effort as Marston held on for victory.

Craig Freeman bagged a brace as Eynsham eased to a 3-0 win against Chadlington. Tom Jerrerd got their other.

Rover Cowley beat Bletchingdon 4-2.

Goals from Paul Bough and Luke Bremner appeared to put Rover in control, only for Bletchingdon to level through Paul Falkner and Sam Edmonds.

But Craig Bloomfield made it 3-2 with his eighth goal of the season, before Bremner's second sealed it for Rover.

A Tony Bott strike sealed a 1-0 win for Enstone against Oxford University Press.

Garsington got the better of Adderbury Park with a 5-4 win, with goals from Colin Ryan (2), Lee Sharkey, Tyrone Brackett and Carl Bloomfield.

Charles Akins, Gary Crooke, Martin Jones and Dave Addison replied.

Gary Skinner hit a hat-trick as Kidlington Old Boys handed Eynsham a 6-2 thrashing in Division 1.

A Skinner double and strikes from Chris Wise and Daniel Jones saw Kidlington go 4-0 up.

In the second half, Eynsham clawed one back, only for Skinner to wrap up his treble.

Although Eynsham got a second, Chris Fujak netted Kidlington's sixth.

Middleton Cheney drew 1-1 at Charlton.

Chris Staker fired the home side ahead, before Craig Duckett levelled from the penalty spot.

Rui Matos scored the equaliser as Fritwell drew 1-1 with North Oxford.

Dean Joseph had fired Oxford ahead.

Oakley squeezed to a 3-2 win at home to Yarnton.

Glen Felix put the visitors ahead, before Amin Jmil's brace gave Yarnton the lead.

Substitute Charlie Dunsmuir levelled before Andy Patrick knocked in the late winner.

Strikes from Simon Stapleton, Danny Taylor, Dave Cooper and sub Jefferson Harriott helped Freeland to a 4-2 win at OUP Res in Division 2. Paul Gray and Will Rum replied.

Long Crendon battled back to beat Yarnton Res 3-1.

John Webb gave Yarnton the lead, before Mark Wiltshire (2) and Darren Gascoyne hit back.

Slade Farm United won 1-0 at Bletchingdon Res, Matthew Blenford the scorer.

Broughton & North Newington Res thrashed Fritwell Res 6-1 in Division 3.

Wesley Furey, Jimmy Phillips, Craig Hale, Mark Jackson, Wayne Barton and sub Richard Goodwin found the net for Broughton.

Ryan Hunt equalised as Stonesfield Res drew 3-3 at Freeland Res.

Steve Smith and Pete Andrews gave Stonesfield a 2-0 lead, before keeper Jamie Perkin saved Tom Mason's penalty.

Strikes from Dave Tarr, Rob Belcher and Hunt saw Freeland storm into the lead.

However, Hunt equalised from 25 yards.

Lee Emery hit a hat-trick as Adderbury Park Res crushed Long Crendon Res 5-1.

Junior Howards (2) got their others with Dave Coombes replying with a penalty spot.

Yarnton's Paul Skinner holds off Alex Meakin during their 3-2 loss at Oakley in Division 1.