Match coverage

Erling Haaland of Manchester City celebrates after scoring his side's second goal during the Premier League match between West Ham United and...

Below is a list of my football match coverage: reports, previews, player ratings and the like – published across various platforms, covering different leagues, teams, competitions.. plenty.

Articles written pre-February 2022 are archived and don’t feature in this list. In chronological order, click on a piece for the publish date before reading… Enjoy and spread the word!


November, December
Portugal 6-1 Switzerland: Ramos’ hat-trick justifies Santos’ selection in statement thrashing
France 3-1 Poland: Giroud breaks all-time record, Mbappe’s brace puts Poles to the sword
Croatia goalless draw sees Belgium crash out and Martinez depart, they must now rebuild
England 0-0 USA: Berhalter’s boys expose Three Lions in anti-climactic World Cup stalemate
France 4-1 Australia: World champions rally from early scare to earn big win in WC opener
Drogheda vs. Finn Harps — DROG 2-0 HARPS: Markey, Rooney score as Drogs end 2022 with win 
Djurgardens vs. Shamrock RoversEriksson on target as Blue Stripes finish group unbeaten

September, October
Sligo Rovers vs. St. Patrick’s AthleticSLIGO 1-0 ST PATS: Keena pen ends Saints’ Euro hopes
Bohemians vs. Finn Harps — BOHS 2-2 HARPS: McDaid’s late equaliser stuns wasteful visitors
FAI Cup: Waterford vs. ShelbourneMolloy’s masterful strike fires Duff’s men into FAI Cup Final
Dundalk vs. St Pats — DUN 1-2 ST PATS: O’Reilly’s last-gasp winner keeps European hopes alive
U21s: Chelsea’s Gallagher produces integral display vs. Germany, before big month of October
UNL – Scotland vs. Republic of IrelandSCO 2-1 IRL: Hendry, Christie goals seal comeback win
FAI Cup: Shelbourne vs Bohemians — Shels 3-0 Bohs: Moylan, Boyd see Duff’s men into semis
Wexford Youths 5-1 Cork City: Rossiter, Molloy among goals as hosts go top, at least temporarily

Shelbourne 0-1 Derry City: Graydon’s deflected strike in stoppage-time keeps title hopes alive
FAI Cup: Bonagee vs. Shelbourne — Bonagee 0-4 Shels: Giurgi, Moylan, Carr brace seal R3 berth
Treaty 0-6 Galway: McKee, Thompson screamer catalyst as Galway goal glut at Markets Field
IPL: Shelbourne vs BohemiansFarrell’s penalty ensures draw in ill-tempered Dublin derby
Real 2-0 Eintracht Frankfurt: Alaba, Benzema ensure Los Blancos seize UEFA Super Cup title
Haaland haunts Hammers, as champions City preview life with Norwegian leading their line
UECL: CSKA Sofia vs St Patrick’s Athletic — Atakayi the late matchwinner as Saints snatch first leg

UECL: Sligo Rovers vs Motherwell — Blaney, Mata seal historic win for Sligo, Norway trip awaits
WNL: Peamount vs Shelbourne — Peamount 0-4 Shels: Larkin’s super cameo sinks slack Peas
Bray vs Cork Preview — Bray 1-3 Cork: Murphy, Hakkinen, Keating score in valuable away result
U19 Euros: After flawless group stage campaign, tougher tests now await English teens
Liverpool 0-1 Real: Courtois’ inspired display, once again, a fitting end as Real secure 14th CL title
Treaty vs Cobh Ramblers Preview: Strugglers collide — Ludden’s brace sees hosts snatch point
Treaty United vs Bray Wanderers: Mid-table battle awaitsFox’s late equaliser secures 2-2 draw

March, April
Galway WFC 2-2 Wexford Youths: Russell’s late equaliser sees shares spoiled in frantic clash
Treaty 2-3 Galway: Manning’s wonderstrike kicks off remarkable late fightback
Galway 2-0 Bray: Goals from Walsh, Hurley maintain pressure on Cork
Bohemian 2-2 Finn Harps: Timlin’s stoppage-time equaliser saves nine-man visitors
Bray Wanderers 0-0 Treaty United: Spurned chances headline drab goalless affair
Galway United 1-0 Cobh: Brouder’s second-half strike sees hosts back to winning ways
England, rest of Europe

Liverpool 4-0 Manchester United: Reds return top, easing to rousing rout of Rangnick’s men
Chelsea 1-3 Real: Benzema hat-trick leaves UCL holders with mountain to climb
Arsenal 0-2 Liverpool: Second-half goals from Jota, Firmino see Reds close gap on leaders City
Real Madrid (3) 3-1 (2) PSG: Benzema’s second-half hat-trick secures unlikely comeback
Coppa Italia – Fiorentina 0-1 Juventus: Venuti’s own goal at the death seals heartbreaking finish

Carabao Cup Final: Liverpool’s fullback duo show their mettle against wasteful Chelsea
Inter Milan 0-2 Liverpool: Firmino, Salah score as Reds seize commanding first leg lead
PSG 1-0 Real Madrid: Mbappe’s stoppage-time magic sinks Los Blancos in tense first leg
Gabriel’s gritty all-round display against Wolves shines a light on volatile Arsenal

archives: match reports, international tournaments & youth football

Players of Schalke and Dortmund gesture during the Bundesliga match between Borussia Dortmund and FC Schalke 04 at Signal Iduna Park on November 25,...


Nations League
Spain 1-2 France: Les Bleus seal Nations League title the hard way after nailbiting finish
Belgium 2-3 France: Benzema, Mbappe key as Les Bleus earn second-half comeback win

English football
Aston Villa 1-3 Chelsea: Lukaku the matchwinner as Blues complete comfy comeback
Everton 2-1 Arsenal: Richarlison and Gray help Toffees turn the tide late on
Liverpool 2-2 Manchester City: de Bruyne douses Reds’ hearts in thrilling second-half
Crystal Palace 1-1 Brighton: Maupay delivers sucker punch stoppage-time equaliser
Liverpool 1-1 Chelsea: Havertz, Salah ensure points are shared in tense affair
Brentford 2-0 Swansea City: Toney, Marcondes goals end Bees’ Premier League wait
Omari Hutchinson, Miguel Azeez sparkle as Arsenal earn FA Youth Cup win vs. West Ham

Athletic Bilbao 1-2 Real Madrid: Benzema’s quick-fire brace sees Los Blancos prevail
Bayer Leverkusen 3-2 Celtic: Diaby’s bullet volley ensures Seoane’s men top Group G
Juventus 1-0 Chelsea: Chiesa the catalyst as ponderous Blues stifled in Turin
Liverpool 3-2 Milan: Henderson’s half-volley settles shaky 2021-22 UCL opener
Kai Havertz seizes big moment as Chelsea seal second Champions League triumph

England’s group stage campaign at U21 Euros
Slender opening game defeat vs. disciplined Switzerland
Comfortably humbled by Group D winners Portugal
Knocked out despite frantic win over Croatia


20-21: Player Ratings and other post-match coverage
Real Madrid 2-0 B. Monchengladbach: 5 Hits and Flops as both sides book knockout places
RB Leipzig 3-2 Manchester United: 5 Talking Points as Red Devils crash out of UCL
Manchester United 1-3 PSG: 5 Talking Points as Neymar’s brace sinks hosts
Inter Milan 0-2 Real Madrid: 5 Talking Points as Los Blancos earn big away win
RB Leipzig 2-1 PSG: 5 Hits and Flops as Nagelsmann’s men complete frantic comeback
Juventus 0-2 Barcelona: 5 Talking Points as Dembele, Messi pile early pressure on Pirlo
Bayern 4-0 Atletico Madrid: Player Ratings as Bavarians begin UCL defence in style
PSG 1-2 Manchester United: 5 Talking Points as Rashford turns hero again
Borussia Dortmund 2-3 Bayern Munich: Player Ratings as Kimmich seals another trophy
Nations League – Portugal 4-1 Croatia: Player Ratings as Santos’ side cruise to victory

Match previews
Europa League Final: Sevilla vs Inter Milan – Quest for supremacy ends here
UCL semi-final: Lyon vs Bayern Munich – Bavarians looking to end OL’s fairytale
Europa League semi-final: Sevilla vs Manchester United – Anything can happen
UCL quarter-final: Manchester City vs Lyon – Will the Citizens avoid a slip-up here?
Champions League last-16: Manchester City vs Realand Bayern vs Chelsea

2019-20 UCL, 5 talking points from the knockout stages
Bayern Munich 1-0 PSG: Coman’s strike clinches UCL triumph
RB Leipzig 0-3 PSG: Parisians cruise into Champions League Final
PSG 2-1 Atalanta: Choupo-Moting’s late heroics seal unlikely comeback
Barcelona 3-1 Napoli: Messi excellence ends Partenopei’s season
Man City 2-1 Real Madrid: Citizens sting Real to book quarter-final berth

2019/20 La Liga title race – 5 Hits and Flops
Barcelona 1-0 Espanyol: Suarez’s strike relegates their city rivals
Athletic Bilbao 0-1 Real Madrid: Los Blancos edging ever closer to title
Celta Vigo 2-2 Barcelona: Aspas further dents visitors’ title hopes
Real Madrid 3-0 Valencia: Benzema, sub Asensio turn on the style
Barcelona 2-0 Leganes: Fati, Messi on target in another Barca win

Various match reports, across all competitions
Arsenal 1-1 Liverpool (5-4 on pens): Gunners clinch Community Shield victory
Arsenal 2-1 Chelsea: Aubameyang’s brace seals FA Cup trophy and European football
Juventus 2-1 Lazio: Player Ratings as Ronaldo’s brace edges Juve closer to title
Sheffield United 3-0 Chelsea: 5 Talking Points as Blades blast Blues into submission
Sheffield United 3-1 Tottenham: Sander Berge excels as Wilder’s side sweep Spurs aside
Real Sociedad 1-1 Osasuna: Oyarzabal’s strike forces sides to settle for point
Mallorca 0-4 Barcelona: Vidal and Braithwaite among scorers as leaders ease to victory
Juventus 0-0 Milan: Ronaldo misses penalty, but Juve into Coppa Italia Final
Sevilla 2-0 Real Betis: Lucas Ocampos magic decisive in El Grand Derbi win

Bundesliga the first to return
Bayern 2-1 Borussia Monchengladbach: Goretzka’s late winner stings visitors
Freiburg 1-0 Borussia Monchengladbach: Petersen strikes as visitors drop key points
Werder Bremen 0-3 Eintracht Frankfurt: Silva and sub Ilsanker stifle blunt hosts
FC Köln 2-4 RB Leipzig: Nagelsmann’s men show too much class in six-goal thriller
SC Paderborn 1-6 Borussia Dortmund: Sancho’s first senior hat-trick sinks hosts
Schalke 04 0-1 Werder Bremen: Bittencourt’s stunner extends Blues’ winless streak
SC Freiburg 0-1 Bayer Leverkusen: Havertz pokes home winner in hard-fought win

Pre-pandemic matches
PSG (3) 2-0 (2) Bor. Dortmund: 5 Hits and Flops as Parisians recover to book quarter-final berth
Borussia Dortmund 2-1 PSG: Same old story with polarising Neymar, Haaland steals the show
Aston Villa 2-3 Tottenham: Son punishes late error to score stoppage-time winner
Burton Albion 2-2 Oxford United: Matty Taylor’s stoppage-time strike snatches late point
Bayer Leverkusen 4-3 Borussia Dortmund: Bailey, Bender with late goals in sensational finish
QPR 1-0 Leeds United: Nahki Wells’ controversial winner stings wasteful Whites
Monaco 1-4 PSG: Mbappe nets brace against former side as VAR steals show


Leicester City 0-4 Liverpool: 5 Talking Points, Tactical Analysis as Reds win yet again
Inter Milan 1-2 Barcelona: Player Ratings as Ansu Fati makes Champions League history
Barcelona 3-1 Borussia Dortmund: 5 Talking Points, Tactical Analysis as BVB outclassed
Real Madrid 2-2 PSG: 5 Talking Points, Tactical Analysis as visitors salvage point
Chelsea 4-4 Ajax: Erik ten Hag’s men dig deep in crazy eight-goal thriller
Tottenham 2-7 Bayern Munich: 5 Talking Points, Tactical Analysis as Spurs decimated
Eintracht Frankfurt 0-3 Arsenal: Saka shines as Gunners respond with convincing win
Norwich City 3-2 Manchester City: 5 Talking Points after stunning shock in East Anglia
Huddersfield 1-2 Derby County: Lawrence’s stunning brace kickstarts Cocu era

Youth football
Fabian Ruiz stars, Spain win U21 Euros with 2-1 victory over Germany
EURO U21 Roundup: Day 1 complete, Poland and hosts Italy victorious

2019 Nations League
Guedes the matchwinner – Portugal 1-0 Netherlands: 5 Hits and Flops in Final
Lions humbled by Dutch – Netherlands 3-1 England: 5 Talking Points, Tactical Analysis
Ronaldo reigns supreme – Portugal 3-1 Switzerland: 5 Talking Points, Tactical Analysis

Aston Villa 2-1 Derby County: El Ghazi and McGinn seal Villa’s Premier League return
Manchester City 6-0 Watford: Slick Citizens cruise to domestic treble with FA Cup triumph
Leeds United (3) 2-4 (4) Derby County: Marriott the hero as Rams off to Wembley
Brighton 1-4 Manchester City: 5 Talking Points as Pep’s men retain Premier League title
Liverpool 4-0 Barcelona: 5 Talking Points as Reds complete the improbable comeback
Brentford 2-0 Leeds United: Maupay, Canos dent visitors’ promotion hopes
Juventus (2) 1-2 (3) Ajax: de Ligt heads exciting underdogs into the semis
Liverpool 2-1 Tottenham: Lloris’ late mistake gifts Reds another win
Barcelona 5-1 Lyon: Messi magic overwhelms visitors, sealing quarter-final berth
Manchester City 1-0 Chelsea (4-3 on pens): Sterling’s winner seals successive Carabao Cup win
Tottenham 3-0 Borussia Dortmund: Inspired second-half sees Spurs in control
Manchester United 0-2 PSG: Kimpembe, Mbappe silence Solskjaer’s men
Manchester City 6-0 Chelsea: Aguero, Silva and Sterling shine as hosts enjoy rout
Wolves 4-3 Leicester City: Jota hat-trick secures last-gasp win in epic thriller
West Ham 1-0 Arsenal: Declan Rice’s first career goal sinks frustrating Gunners


PSG 2-1 Liverpool: Bernat and Neymar on target against lacklustre Reds
Chesterfield 1-1 Billericay Town: Emmanuel’s screamer secures FA Cup replay
Chelsea 2-2 Manchester United: Barkley’s late equaliser saves Blues’ unbeaten streak
Borussia Dortmund 4-3 Augsburg: Alcacer hat-trick stuns visitors in crazy second-half
Reading 1-2 Derby County: Lampard off to perfect managerial start with last-gasp winner

World Cup 2018
Final Preview: France vs Croatia – All or nothing
France 1-0 Belgium: Umtiti’s header breaks Belgians in smash-and-grab victory
Uruguay 0-2 France: Varane and Muslera’s error seal semi-final berth
France 4-3 Argentina: Mbappe magic fires Les Bleus into the quarter-finals
Five best players from the group stages
England 6-1 Panama: Clinical Lions record biggest ever World Cup win
Tunisia 1-2 England: Kane’s stoppage-time strike spares Three Lions’ blushes
France 2-1 Australia: Pogba’s wicked strike deflates plucky Socceroos
Portugal 3-3 Spain: Ronaldo hat-trick, Costa brace in World Cup classic

Chelsea 1-0 Man Utd: Hazard’s penalty seals Blues’ eighth FA Cup trophy
Fulham (2) 2-0 (1) Derby County: Sessegnon and Odoi send Cottagers to Wembley
Bayern Munich 1-2 Real Madrid: Hosts rue missed chances, Los Blancos draw first blood
Liverpool 3-0 Manchester City: First-half blitz stuns lacklustre sky Blues
Juventus 0-3 Real Madrid: Ronaldo runs riot as Champions League holders seal big win
Carabao Cup Final – Arsenal 0-3 Man City: Citizens rampant over limp Gunners
Real Madrid 3-1 PSG: Ronaldo steals the show as wasteful Parisiens rue their luck
Watford 4-1 Chelsea: Doucoure and Deulofeu shine as Hornets thump struggling Blues

2017 and older

Real Madrid 0-3 Barcelona: Messi sparkles as Barca go eleven points clear
Arsenal 3-3 Liverpool: Firmino ensures points are shared in six-goal thriller
Manchester United 1-2 Manchester City: Hosts outclassed as Pep’s men roll on
Borussia Dortmund 4-4 Schalke 04: Super subs spark remarkable fightback in dramatic finale
Germany 1-0 Chile: Lars Stindl strike steals Confederations Cup triumph
AS Monaco (6) 3-1 (3) Borussia Dortmund: Hosts excel to seal semi-final place

Youth football
U23s: Arsenal 4-3 Man City – Nelson, Nketiah shine as Wilshere sent off in seven-goal thriller
U23s: Chelsea 2-0 Derby – Blues edge past unlucky visitors despite frantic finish
U21 Euros: Germany 1-0 Spain – Weiser’s first-half header seals final win
U23s: Arsenal 2-2 Man Utd – Subs cost Young Guns as Red Devils seal second-half comeback
U21s: Arsenal 3-1 Newcastle – Gnabry excellent as Rosicky and Wilshere return
U18s: Arsenal (3) 2-2 (4) Manchester City – Willock and Malen’s goals not enough to earn final
UEFA Youth League – Man City 4-1 Juventus: Young Blues relentless in attacking display
Man City EDS 1-1 Borussia Mönchengladbach: Youngsters share the spoils in first cup fixture
U21s: Liverpool 0-1 Chelsea: Abraham scores at the death as Blues sneak past
U21s: Denmark 1-4 Sweden – Swedes seal their place in Tuesday’s final with emphatic win
U21s: England 1-0 Sweden: Jesse Lingard stunner seals first victory for Young Lions

Euro 2016
France 0-1 Portugal (AET): Eder’s extra-time strike leaves French ruing missed chances
Wales 3-1 Belgium: Williams, Robson-Kanu and Vokes seal semi-final spot for Dragons

Man City Women 2-0 Arsenal Ladies: Ross and Duggan on scoresheet as Citizens prevail
Man City Women 2-0 Liverpool Ladies: Duggan and Christiansen send Blues into quarter-finals
Chelsea Ladies 1-2 Man City Ladies: Rafferty’s cruel own goal splits the sides
France 0-2 Colombia: Favourites suffer surprise loss, Colombians secure first ever World Cup win

Older specials
Chile (4) 0-0 (1) Argentina: La Roja win Copa America on penalties in nervy affair
Chile 5-0 Bolivia: La Roja superb and efficient as they top Group A emphatically
2015 UCL Final – Barcelona 3-1 Juventus: Rakitic starts slick win as Catalans seal record treble
U17s: Croatia 1-1 Belgium (3-5 on penalties): Azzazoui bright as Croats defeated in shootout

2015-16 live commentaries
As it happened: West Brom 0-3 Manchester City – Sterling makes competitive City debut
2015 UCL Group Stage Draw – PSG vs Real, Bayern vs Arsenal headline exciting group pairings
Sunderland 0-1 Southampton: As it happened – Tadic seals deserved away win
EURO 2016 play-offs – Sweden 2-1 Denmark: Forsberg, Ibrahimovic give Swedes first leg lead
Man City (3) 1-0 (2) PSG: de Bruyne sends Citizens into UCL semi-finals