Cardiff City won the south Wales derby and dealt a huge blow to Swansea’s hopes of automatic promotion with a hard-fought 1-0 victory at Liberty Stadium.
Defender Aden Flint headed the Bluebirds in front, reacting when the Swans failed to deal with a long throw.
Kieffer Moore missed a golden chance to double the lead and Swansea poured on the pressure in the second half.
However, Andre Ayew hit the inside of the post with Swansea’s best chance.
The victory lifts Cardiff to eighth in the Championship, four points off the play-off berths, while Swansea stay third.
South Wales derbies are always worth a watch because of the intensity of the rivalry, but the contest takes on even more meaning when the stakes are high, which was certainly the case here with promotion still a realistic aim for both sides.
Swansea made four changes to the side hammered at Bournemouth in midweek with Marc Guehi, Jay Fulton and Jake Bidwell recalled and Morgan Whittaker given a first Swans start in a huge contest.
The visitors were hit by an injury to Perry Ng that forced midfielder Joe Ralls into an unfamiliar wing-back role, while Harry Wilson was recalled to lead the line with his Wales team-mate Moore.
Swansea had utterly dominated Cardiff when winning the reverse fixture 2-0 in December, and it was the hosts who had the first chance, but Dillon Phillips tipped Conor Hourihane’s free-kick around the post, before Hourihane was forced off by injury after only 18 minutes.
By then the Swans trailed as they failed to clear a Will Vaulks long throw, with Freddie Woodman producing a fantastic save to deny Marlon Pack, only to be helpless as Flint reacted quickest to head home.
No defender in the Premier League or English Football League has scored more goals since 2014 than Flint, who has 38 over that period.
Cardiff’s set-pieces and long throws are always a threat, but the size difference between the teams was underlined several times in the first half with Flint heading wide from another long throw and Sean Morrison heading over from a Vaulks free-kick.
Vaulks was central to everything in the first period and his smart through ball found Leandro Bacuna, but Woodman parried away his effort, before Bacuna was just short of turning in Moore’s cross.
Cardiff perhaps deserved more for such a dominant display, but Moore missed a golden chance after Woodman’s mistake, rounding the goalkeeper only to produce a weak shot that Ryan Bennett gratefully cleared off the line.
Swansea had lost only one of their past 15 league games at home and started the second half well, with Whittaker testing Phillips and Ayew curling a free-kick just wide.
Cardiff missed a big chance on the counter-attack on 65 minutes when Wilson’s curling effort was saved by Woodman, along with the rebound, before sustained Swansea pressure saw Ayew head against the inside of the post from Fulton’s cross.
Swansea’s pressure was relentless as Korey Smith fired over and shot after shot was blocked, with Cardiff’s defence superb as they literally threw their bodies in the way of shots to maintain their lead and the south Wales bragging rights.
The Swans finished the game virtually camped in the Cardiff half, with Whittaker missing a chance late on as he fired just wide after finding space in the box, while Lowe’s effort was saved by Phillips on a day where the ball just would not fall for the Swans.
Swansea head coach Steve Cooper:
“There’s great disappointment because it’s a massive game for everybody and we have come out on the wrong end of it.
“The way it’s happened as well, at the moment it’s difficult to get our head around it. We have conceded off a long throw which we knew was coming.
“Then it’s been all us. We have played some brilliant football, we have created lots of chances, we have dominated every single stat you want to dominate apart from the most important one and that’s the score. It’s a tough one to take.”
- 26NaughtonSubstituted forLoweat 76′minutes
- 6FultonSubstituted forDhandaat 80′minutes
- 24BidwellSubstituted forManningat 76′minutes
- 14HourihaneSubstituted forSmithat 18′minutes
- 10A Ayew
- 4MorrisonBooked at 45mins
- 30BrownBooked at 90mins
- 6VaulksBooked at 81mins
- 7BacunaSubstituted forMurphyat 66′minutes
- 23WilsonSubstituted forOjoat 84′minutes
- 29M Harris
Match ends, Swansea City 0, Cardiff City 1.
Second Half ends, Swansea City 0, Cardiff City 1.
Ryan Bennett (Swansea City) wins a free kick in the defensive half.
Foul by Kieffer Moore (Cardiff City).
Foul by Matt Grimes (Swansea City).
Kieffer Moore (Cardiff City) wins a free kick in the defensive half.
Attempt saved. Morgan Whittaker (Swansea City) left footed shot from outside the box is saved in the top left corner. Assisted by Connor Roberts.
Attempt missed. Yan Dhanda (Swansea City) right footed shot from the centre of the box is just a bit too high. Assisted by Matt Grimes following a set piece situation.
Ciaron Brown (Cardiff City) is shown the yellow card for a bad foul.
Morgan Whittaker (Swansea City) wins a free kick on the right wing.
Foul by Ciaron Brown (Cardiff City).
Attempt missed. Morgan Whittaker (Swansea City) left footed shot from the centre of the box is close, but misses to the left.
Attempt blocked. Morgan Whittaker (Swansea City) left footed shot from the centre of the box is blocked.
Attempt blocked. André Ayew (Swansea City) right footed shot from outside the box is blocked.
Substitution, Cardiff City. Sheyi Ojo replaces Harry Wilson.
Corner, Swansea City. Conceded by Sean Morrison.
Attempt blocked. Yan Dhanda (Swansea City) right footed shot from outside the box is blocked. Assisted by Jamal Lowe.
Attempt blocked. Jamal Lowe (Swansea City) right footed shot from the centre of the box is blocked. Assisted by Ryan Manning with a cross.
Will Vaulks (Cardiff City) is shown the yellow card.
Morgan Whittaker (Swansea City) wins a free kick in the defensive half.