EFL roundup: West Ham close on Swansea, Bradford go top and Wednesday hit five
West Ham cut Swansea City’s Championship lead to one point, Bradford City moved to the top of League One and Salford City maintained their advantage in League Two…
West Ham cut Swansea City’s Championship lead to one point, Bradford City moved to the top of League One and Salford City maintained their advantage in League Two on a busy Saturday across the EFL.
Sheffield Wednesday delivered the afternoon’s biggest league victory, beating AFC Wimbledon 5-0, while West Brom recovered from two goals down to defeat Blackburn Rovers.
Our EFL roundup covers the key stories, results and full league tables following the afternoon’s matches on Saturday 17 October 2026.
Championship: West Ham close the gap as West Brom fight back
Divine Mukasa’s 34th-minute goal gave West Ham a 1-0 victory at Swansea, lifting the visitors into second place.
Nuno Espírito Santo’s side followed their six-goal win at Lincoln City with another away victory and clean sheet. Swansea remain top on 23 points, with West Ham now on 22.
Middlesbrough also have 22 points after recovering from a two-goal half-time deficit to draw 2-2 with Cardiff City. Tommy Conway and substitute Will Lankshear scored three minutes apart, but Boro could not find a winner after Cardiff’s Gabriel Osho was sent off late on.
Birmingham City beat QPR 3-0 through a Liam Millar double and a late Demarai Gray goal. West Brom joined them on 20 points after a dramatic 3-2 victory over Blackburn. Andri Gudjohnsen scored twice inside 12 minutes for Rovers, but Barney Stewart, Isaac Price and Felix Horn Myhre completed the turnaround, with Myhre striking in the 89th minute.
At the other end, Watford beat Charlton 2-0 through Luca Kjerrumgaard and Jordan Zemura to ease the pressure on Alessio Dionisi. Wrexham defeated bottom club Preston 4-1, while Derby and Norwich suffered home defeats against Stoke and Portsmouth respectively.
Championship results
Saturday’s completed fixtures:
| Home | Score | Away |
|---|---|---|
| Birmingham City | 3-0 | QPR |
| Bristol City | 0-1 | Sheffield United |
| Derby County | 0-1 | Stoke City |
| Middlesbrough | 2-2 | Cardiff City |
| Millwall | 2-2 | Lincoln City |
| Norwich City | 0-1 | Portsmouth |
| Southampton | 0-0 | Bolton Wanderers |
| Swansea City | 0-1 | West Ham United |
| Watford | 2-0 | Charlton Athletic |
| West Brom | 3-2 | Blackburn Rovers |
| Wrexham | 4-1 | Preston North End |
Friday’s result: Burnley 1-2 Wolves.
Championship table
P = played; GD = goal difference. Standings after Saturday’s matches, as listed by Sky Sports.
| Pos | Club | P | GD | Pts |
|---|---|---|---|---|
| 1 | Swansea City | 11 | +8 | 23 |
| 2 | West Ham United | 11 | +18 | 22 |
| 3 | Middlesbrough | 11 | +6 | 22 |
| 4 | Birmingham City | 11 | +9 | 20 |
| 5 | West Brom | 11 | +3 | 20 |
| 6 | Stoke City | 11 | +2 | 19 |
| 7 | Southampton* | 11 | +11 | 17 |
| 8 | Wolves | 10 | +3 | 17 |
| 9 | QPR | 11 | +3 | 17 |
| 10 | Blackburn Rovers | 11 | +1 | 15 |
| 11 | Sheffield United | 11 | +1 | 15 |
| 12 | Millwall | 11 | 0 | 15 |
| 13 | Portsmouth | 10 | 0 | 14 |
| 14 | Wrexham | 11 | -1 | 14 |
| 15 | Bolton Wanderers | 11 | -3 | 14 |
| 16 | Bristol City | 11 | -3 | 14 |
| 17 | Charlton Athletic | 11 | -5 | 14 |
| 18 | Lincoln City | 11 | -10 | 12 |
| 19 | Cardiff City | 11 | +1 | 11 |
| 20 | Watford | 11 | -9 | 11 |
| 21 | Norwich City | 11 | -4 | 9 |
| 22 | Burnley | 11 | -5 | 8 |
| 23 | Derby County | 11 | -11 | 6 |
| 24 | Preston North End | 11 | -15 | 4 |
Southampton’s total includes a four-point deduction.
League One: Bradford take top spot as Wednesday run riot
Bradford City moved into first place with a 2-0 win over Stevenage, giving Michael Duff his first victory as manager.
Antoni Sarcevic broke the deadlock from the penalty spot in the 79th minute before Will Swan added the second eight minutes later.
Plymouth Argyle slipped to fourth after losing 2-0 at home to Huddersfield Town. Stockport County moved second by beating Bromley 1-0, while Cambridge United’s 2-1 victory at Barnsley left four clubs immediately below Bradford level on 19 points.
Sheffield Wednesday provided the division’s standout performance, putting five past AFC Wimbledon at Hillsborough. Davis Keillor-Dunn scored twice, with Barry Bannan, Harry Gray and Callum Slattery also on target. Wednesday extended their unbeaten league run to seven matches, while Wimbledon failed to register a shot on target.
Leicester City beat Doncaster Rovers 2-1, and bottom club Wigan Athletic earned a valuable 1-0 victory over Reading. Wigan remain last on goal difference but moved level on points with Notts County, who lost at Wycombe.
League One results
Saturday’s completed fixtures:
| Home | Score | Away |
|---|---|---|
| Barnsley | 1-2 | Cambridge United |
| Bradford City | 2-0 | Stevenage |
| Leicester City | 2-1 | Doncaster Rovers |
| Leyton Orient | 2-0 | Blackpool |
| MK Dons | 2-1 | Luton Town |
| Peterborough United | 2-2 | Burton Albion |
| Plymouth Argyle | 0-2 | Huddersfield Town |
| Sheffield Wednesday | 5-0 | AFC Wimbledon |
| Stockport County | 1-0 | Bromley |
| Wigan Athletic | 1-0 | Reading |
| Wycombe Wanderers | 2-0 | Notts County |
League One table
Standings after Saturday’s matches, as listed by Sky Sports.
| Pos | Club | P | GD | Pts |
|---|---|---|---|---|
| 1 | Bradford City | 10 | +5 | 20 |
| 2 | Stockport County | 10 | +10 | 19 |
| 3 | Huddersfield Town | 10 | +9 | 19 |
| 4 | Plymouth Argyle | 11 | +4 | 19 |
| 5 | Cambridge United | 10 | +4 | 19 |
| 6 | Sheffield Wednesday | 9 | +12 | 18 |
| 7 | Reading | 10 | +10 | 15 |
| 8 | Oxford United | 8 | +7 | 15 |
| 9 | Leyton Orient | 10 | +4 | 14 |
| 10 | Burton Albion | 11 | -2 | 13 |
| 11 | Wycombe Wanderers | 10 | -4 | 13 |
| 12 | Stevenage | 9 | +2 | 12 |
| 13 | Mansfield Town | 9 | -2 | 12 |
| 14 | Leicester City | 9 | -3 | 12 |
| 15 | AFC Wimbledon | 10 | -8 | 12 |
| 16 | Luton Town | 9 | 0 | 11 |
| 17 | Doncaster Rovers | 9 | -1 | 9 |
| 18 | MK Dons | 9 | -5 | 9 |
| 19 | Peterborough United | 10 | -7 | 9 |
| 20 | Blackpool | 9 | -3 | 8 |
| 21 | Barnsley | 9 | -8 | 8 |
| 22 | Bromley | 9 | -12 | 8 |
| 23 | Notts County | 9 | -5 | 7 |
| 24 | Wigan Athletic | 9 | -7 | 7 |
League Two: Salford stay ahead as Barnet win late at Tranmere
Salford City retained top spot with a 2-1 victory over Crawley Town, with Macaulay Langstaff scoring twice to secure their fifth consecutive league win.
Barnet stayed one point behind after coming from behind to beat Tranmere Rovers 2-1 at Prenton Park.
Will Vaulks gave Tranmere the lead, but Kabongo Tshimanga equalised before converting an 87th-minute penalty. Joel Senior was subsequently sent off for the hosts as Barnet extended their unbeaten league start to nine games.
Crewe Alexandra also remained unbeaten after a 3-2 win over Rochdale. They sit alongside Barnet on 21 points, although Barnet have played two fewer matches.
Oldham Athletic beat Cheltenham Town 4-1, while Northampton’s 2-0 victory at Grimsby lifted them above Rotherham on goal difference. Rotherham lost 2-0 at Fleetwood, leaving Crawley five points adrift at the bottom.
League Two results
Saturday’s completed fixtures:
| Home | Score | Away |
|---|---|---|
| Accrington Stanley | 3-1 | Gillingham |
| Colchester United | 0-0 | Exeter City |
| Crewe Alexandra | 3-2 | Rochdale |
| Fleetwood Town | 2-0 | Rotherham United |
| Grimsby Town | 0-2 | Northampton Town |
| Newport County | 1-1 | York City |
| Oldham Athletic | 4-1 | Cheltenham Town |
| Port Vale | 1-0 | Chesterfield |
| Salford City | 2-1 | Crawley Town |
| Shrewsbury Town | 1-0 | Bristol Rovers |
| Swindon Town | 1-1 | Walsall |
| Tranmere Rovers | 1-2 | Barnet |
League Two table
Standings after Saturday’s matches, as listed by Sky Sports.
| Pos | Club | P | GD | Pts |
|---|---|---|---|---|
| 1 | Salford City | 11 | +6 | 22 |
| 2 | Barnet | 9 | +10 | 21 |
| 3 | Crewe Alexandra | 11 | +6 | 21 |
| 4 | York City | 10 | +6 | 16 |
| 5 | Walsall | 10 | +6 | 16 |
| 6 | Gillingham | 11 | +3 | 16 |
| 7 | Chesterfield | 11 | +2 | 15 |
| 8 | Cheltenham Town | 11 | -3 | 15 |
| 9 | Bristol Rovers | 11 | -3 | 15 |
| 10 | Accrington Stanley | 11 | +1 | 14 |
| 11 | Newport County | 11 | +1 | 14 |
| 12 | Fleetwood Town | 11 | +1 | 14 |
| 13 | Rochdale | 11 | -2 | 14 |
| 14 | Shrewsbury Town | 11 | -5 | 14 |
| 15 | Grimsby Town | 11 | 0 | 13 |
| 16 | Exeter City | 11 | 0 | 13 |
| 17 | Tranmere Rovers | 11 | -1 | 12 |
| 18 | Swindon Town | 11 | -5 | 12 |
| 19 | Oldham Athletic | 10 | -1 | 11 |
| 20 | Colchester United | 10 | -3 | 11 |
| 21 | Port Vale | 9 | -4 | 11 |
| 22 | Northampton Town | 9 | -1 | 10 |
| 23 | Rotherham United | 11 | -6 | 10 |
| 24 | Crawley Town | 9 | -8 | 5 |



