Jonjo Shelvey scored a wonder goal as Swansea all but guaranteed their Premier League status and left Aston Villa in danger of relegation.

Wilfried Bony put Swansea ahead, slotting the ball past Brad Guzan.

Gabriel Agbonlahor converted Marc Albrighton's cross to equalise before Shelvey volleyed home from the centre circle.

Pablo Hernandez curled in a third before Bony scored his second with an injury-time penalty.

The result leaves Villa just four points above the relegation zone with three games to go.

Swansea's first back-to-back wins in the Premier League since December 2012 means they are 12th in the table, eight points clear of the bottom three.

Whilst Garry Monk's men can potentially be caught by teams in the relegation zone, their goal difference - the best in the bottom half - is effectively worth an extra point.

Their impressive victory at a wet and windy Liberty Stadium means Paul Lambert's visitors are far from safe.

The nature of their loss and poor run of form will be a cause for concern for the club.

They have now lost five of their last six matches. Two of their three remaining fixtures are away at Manchester City and Tottenham.

Villa were behind early on when Shelvey's superb long pass put Bony clear and the Ivory Coast striker slotted the ball past the advancing Guzan.

The visitors pressed in a bid to get back into the game, crossing the ball into the box at every opportunity.

Karim El Ahmadi put Albrighton into space out wide and the winger's cross was smashed into the net from inside the six yard area by Agbonlahor.

It was the England international's first goal since the New Year's Day win at Sunderland.

Villa's revival was short lived and less than four minutes later Ron Vlaar's poor clearance fell straight to Shelvey on the edge of the centre circle, just inside the Villa half.

The Swansea midfielder controlled the ball before volleying a dipping shot over Guzan into the top corner of the goal.

The strike seemed to take the momentum away from Villa as Swansea finished the half strongly.

Villa pressed after the break but created little of note to threaten Michel Vorm's goal.

Shelvey's low shot from just outside the area was tipped around the post by Guzan as Swansea pushed forward.

The killer blow was finally delivered by Hernandez. Shelvey's cross found the Spaniard in space inside the area and the former Valencia winger curled the ball high into the corner of the net.

Late on Villa defender Nathan Baker was judged to have fouled Marvin Emnes inside the area whilst challenging for a ball in the air.

Bony fired home from the spot to send Swansea fans home happy while Villa were booed off the pitch by their travelling supporters.

Lineup, Bookings (4) & Substitutions (6)

Swansea City

  • 01 Vorm
  • 22 Rangel (Taylor - 77' )
  • 33 Davies
  • 08 Shelvey
  • 02 Amat Booked
  • 06 Williams
  • 11 Hernández
  • 07 Britton
  • 10 Bony
  • 20 De Guzmán (Fulton - 83' )
  • 15 Routledge (Emnes - 88' )

Substitutes

  • 03 Taylor
  • 12 Dyer
  • 25 Tremmel
  • 26 Alvaro
  • 27 Bartley
  • 56 Fulton
  • 57 Emnes

Aston Villa

  • 01 Guzan
  • 07 Bacuna (Lowton - 45' )
  • 23 Bertrand
  • 15 Westwood Booked
  • 04 Vlaar
  • 02 Baker Booked
  • 08 El Ahmadi (Holt - 75' )
  • 16 Delph
  • 11 Agbonlahor
  • 12 Albrighton Booked
  • 10 Weimann (Robinson - 67' )

Substitutes

  • 06 Clark
  • 13 Steer
  • 18 Sylla
  • 24 Tonev
  • 29 Holt
  • 34 Lowton
  • 37 Robinson
Ref: Mark Clattenburg
Att: 20,701

Match Stats

Shots

11 11

On target

8 3

Corners

9 6

Fouls

9 12

Live Text Commentary

Full time

Full Time Match ends, Swansea City 4, Aston Villa 1.

90:00 +4:03 Full time

Full Time Second Half ends, Swansea City 4, Aston Villa 1.

90:00 +3:10 Goal scored

Goal! Goal! Swansea City 4, Aston Villa 1. Wilfried Bony (Swansea City) converts the penalty with a right footed shot to the bottom left corner.

90:00 +2:22 Booking

Booking Matthew Lowton (Aston Villa) is shown the yellow card.

90:00 +1:54

Penalty conceded by Nathan Baker (Aston Villa) after a foul in the penalty area.

90:00 +1:54

Penalty Swansea City. Marvin Emnes draws a foul in the penalty area.

90:00 +1:31

Attempt saved. Pablo Hernández (Swansea City) right footed shot from the left side of the box is saved in the bottom right corner. Assisted by Jonjo Shelvey.

90:00 +1:11 Booking

Booking Nathan Baker (Aston Villa) is shown the yellow card for a bad foul.

90:00 +1:07

Foul by Nathan Baker (Aston Villa).

90:00 +1:07

Marvin Emnes (Swansea City) wins a free kick on the left wing.

90:00 +0:31

Nathan Baker (Aston Villa) wins a free kick in the defensive half.

90:00 +0:31

Foul by Wilfried Bony (Swansea City).

89:07

Offside, Aston Villa. Brad Guzan tries a through ball, but Grant Holt is caught offside.

88:53

Ron Vlaar (Aston Villa) wins a free kick in the defensive half.

88:53

Foul by Pablo Hernández (Swansea City).

88:23 Booking

Booking Marc Albrighton (Aston Villa) is shown the yellow card for a bad foul.

88:14

Foul by Marc Albrighton (Aston Villa).

88:14

Ben Davies (Swansea City) wins a free kick on the left wing.

87:59

Foul by Marc Albrighton (Aston Villa).

87:59

Wilfried Bony (Swansea City) wins a free kick in the attacking half.

87:15

Foul by Grant Holt (Aston Villa).

87:15

Ben Davies (Swansea City) wins a free kick in the defensive half.

87:06 Substitution

Substitution Substitution, Swansea City. Marvin Emnes replaces Wayne Routledge.

86:24

Corner, Aston Villa. Conceded by Michel Vorm.

85:03

Attempt missed. Wilfried Bony (Swansea City) right footed shot from outside the box misses to the right.

82:32

Attempt saved. Jonjo Shelvey (Swansea City) right footed shot from outside the box is saved in the bottom left corner. Assisted by Leon Britton.

82:22 Substitution

Substitution Substitution, Swansea City. Jay Fulton replaces Jonathan De Guzmán.

80:53

Foul by Ashley Westwood (Aston Villa).

80:53

Jonathan De Guzmán (Swansea City) wins a free kick in the attacking half.

79:47

Attempt missed. Marc Albrighton (Aston Villa) right footed shot from outside the box is high and wide to the right. Assisted by Ashley Westwood.

77:27

Attempt saved. Ashley Westwood (Aston Villa) right footed shot from outside the box is saved in the bottom right corner.

76:52 Booking

Booking Jordi Amat (Swansea City) is shown the yellow card for a bad foul.

76:50

Gabriel Agbonlahor (Aston Villa) wins a free kick in the attacking half.

76:50

Foul by Jordi Amat (Swansea City).

76:18 Substitution

Substitution Substitution, Swansea City. Neil Taylor replaces Angel Rangel because of an injury.

76:15

Delay over. They are ready to continue.

75:38

Delay in match Angel Rangel (Swansea City) because of an injury.

75:15

Foul by Grant Holt (Aston Villa).

75:15

Ashley Williams (Swansea City) wins a free kick in the defensive half.

74:39

Corner, Aston Villa. Conceded by Angel Rangel.

74:13 Substitution

Substitution Substitution, Aston Villa. Grant Holt replaces Karim El Ahmadi.

73:53

Offside, Swansea City. Michel Vorm tries a through ball, but Wilfried Bony is caught offside.

72:13 Goal scored

Goal! Goal! Swansea City 3, Aston Villa 1. Pablo Hernández (Swansea City) right footed shot from the centre of the box to the top right corner. Assisted by Jonjo Shelvey with a cross.

71:30

Corner, Swansea City. Conceded by Nathan Baker.

68:58

Attempt blocked. Pablo Hernández (Swansea City) right footed shot from the right side of the box is blocked.

66:47 Substitution

Substitution Substitution, Aston Villa. Callum Robinson replaces Andreas Weimann.

64:38

Foul by Nathan Baker (Aston Villa).

64:38

Wilfried Bony (Swansea City) wins a free kick in the defensive half.

60:32

Attempt missed. Jonathan De Guzmán (Swansea City) left footed shot from the centre of the box is close, but misses to the left. Assisted by Wayne Routledge.

59:27

Corner, Swansea City. Conceded by Brad Guzan.

59:26

Attempt saved. Jonjo Shelvey (Swansea City) right footed shot from outside the box is saved in the bottom left corner.

59:07

Foul by Nathan Baker (Aston Villa).

59:07

Wilfried Bony (Swansea City) wins a free kick in the defensive half.

57:40

Corner, Swansea City. Conceded by Ron Vlaar.

55:12

Foul by Matthew Lowton (Aston Villa).

55:12

Wilfried Bony (Swansea City) wins a free kick on the left wing.

52:09

Corner, Swansea City. Conceded by Nathan Baker.

50:13

Corner, Swansea City. Conceded by Fabian Delph.

49:36

Foul by Ashley Westwood (Aston Villa).

49:36

Pablo Hernández (Swansea City) wins a free kick on the right wing.

48:24

Attempt blocked. Fabian Delph (Aston Villa) left footed shot from outside the box is blocked. Assisted by Ashley Westwood.

46:07

Corner, Swansea City. Conceded by Nathan Baker.

45:00 Substitution

Substitution Substitution, Aston Villa. Matthew Lowton replaces Leandro Bacuna.

45:00

Second Half begins Swansea City 2, Aston Villa 1.

45:00 +2:06 Half time

Half Time First Half ends, Swansea City 2, Aston Villa 1.

43:49

Corner, Aston Villa. Conceded by Wilfried Bony.

43:47

Attempt blocked. Ashley Westwood (Aston Villa) right footed shot from long range on the left is blocked.

43:12

Ashley Westwood (Aston Villa) wins a free kick in the attacking half.

43:12

Foul by Pablo Hernández (Swansea City).

41:09

Attempt missed. Fabian Delph (Aston Villa) left footed shot from outside the box is high and wide to the left. Assisted by Andreas Weimann.

38:36

Attempt saved. Andreas Weimann (Aston Villa) right footed shot from outside the box is saved in the top left corner. Assisted by Ashley Westwood.

33:12

Attempt saved. Wilfried Bony (Swansea City) left footed shot from outside the box is saved in the centre of the goal. Assisted by Wayne Routledge.

30:00

Corner, Aston Villa. Conceded by Ashley Williams.

29:38

Corner, Aston Villa. Conceded by Leon Britton.

28:51

Marc Albrighton (Aston Villa) wins a free kick in the attacking half.

28:51

Foul by Ben Davies (Swansea City).

26:53

Offside, Swansea City. Michel Vorm tries a through ball, but Wilfried Bony is caught offside.

25:31 Goal scored

Goal! Goal! Swansea City 2, Aston Villa 1. Jonjo Shelvey (Swansea City) right footed shot from more than 35 yards to the top right corner.

24:44

Corner, Swansea City. Conceded by Ron Vlaar.

24:05

Corner, Swansea City. Conceded by Leandro Bacuna.

23:26

Corner, Swansea City. Conceded by Ron Vlaar.

21:49 Goal scored

Goal! Goal! Swansea City 1, Aston Villa 1. Gabriel Agbonlahor (Aston Villa) right footed shot from very close range to the centre of the goal. Assisted by Marc Albrighton with a cross.

21:30

Ashley Westwood (Aston Villa) wins a free kick in the attacking half.

21:30

Foul by Pablo Hernández (Swansea City).

19:13

Attempt blocked. Marc Albrighton (Aston Villa) right footed shot from outside the box is blocked. Assisted by Karim El Ahmadi.

18:45

Corner, Aston Villa. Conceded by Leon Britton.

18:42

Attempt blocked. Marc Albrighton (Aston Villa) right footed shot from outside the box is blocked. Assisted by Ashley Westwood.

16:21

Attempt missed. Gabriel Agbonlahor (Aston Villa) right footed shot from outside the box misses to the left. Assisted by Karim El Ahmadi.

14:41

Foul by Angel Rangel (Swansea City).

14:41

Ryan Bertrand (Aston Villa) wins a free kick on the left wing.

13:25

Offside, Swansea City. Wilfried Bony tries a through ball, but Wayne Routledge is caught offside.

12:06

Offside, Swansea City. Ashley Williams tries a through ball, but Wilfried Bony is caught offside.

9:13 Goal scored

Goal! Goal! Swansea City 1, Aston Villa 0. Wilfried Bony (Swansea City) right footed shot from outside the box to the bottom right corner. Assisted by Jonjo Shelvey with a through ball.

8:38

Attempt blocked. Leandro Bacuna (Aston Villa) right footed shot from outside the box is blocked.

7:46

Foul by Jordi Amat (Swansea City).

7:46

Gabriel Agbonlahor (Aston Villa) wins a free kick in the attacking half.

5:55

Offside, Swansea City. Ashley Williams tries a through ball, but Jonathan De Guzmán is caught offside.

2:17

Foul by Jonjo Shelvey (Swansea City).

2:17

Gabriel Agbonlahor (Aston Villa) wins a free kick in the attacking half.

1:23

Wayne Routledge (Swansea City) wins a free kick on the left wing.

1:23

Foul by Leandro Bacuna (Aston Villa).

0:00

First Half begins.

0:00

Lineups are announced and players are warming up.

Live data and text provided by our data suppliers