Hull climbed back in to the Championship play-off places with a comprehensive victory over Cardiff.
The visitors were given an early lead when Bluebirds defender Kevin McNaughton put the ball into his own net after a goalmouth scramble.
James Chester added a second within a minute of the restart after Robert Koren's breakaway.
Aaron Mclean completed the victory as the home fans pleaded for him to be ruled offside.
That was not the only moment of controversy, as a potential Ben Turner equaliser was ruled out by the officials, who decided Hull goalkeeper Vito Mannone had been impeded by Kenny Miller.
Nevertheless, Hull were able to register their second victory of the season over Cardiff, and sufficiently improved their goal difference to replace the Welsh side in the top six.
Andy Dawson's sixth-minute corner hardly seemed threatening until home skipper Mark Hudson combined with McNaughton, who sent what should have been a comfortable clearance beyond David Marshall's reach.
The goalmouth muddle gave Hull an early momentum that gathered strength as the hosts failed to make their mark in front of goal.
Andrew Taylor and Kenny Miller set up a chance Joe Mason could not take before Miller saw his own effort fly harmlessly away from the target.
Hull made Cardiff pay for their wastefulness when Joshua King found Chester, who made no mistake from close range to double the visitors' lead two minutes after the break.
Mclean then helped deny another Miller effort, and went on to enjoy the freedom of Cardiff City Stadium amid howls of protests as he raced on to Koren's ball to fire past Marshall after his initial effort was beaten away.
Cardiff manager Malky Mackay:
"Ben Turner's disallowed goal was a horrendous decision by the assistant referee.
"It was incredible and I will send the DVD clip into the Football Association because the officials need to become better.
"But then it is the same official who gave the third goal. I have seen it again and he was at least a yard offside. It was another horrendous decision.
"People will see the scoreline and think we have been torn apart but it wasn't the case."
Hull boss Nicky Barmby:
"On the whole, it was the best performance of our run.
"We needed to put it together and we finally did it.
"Some of our football, the chances we created and the movement of our front players was pleasing. We caused them a lot of problems.
"It's a psychological boost to move into the top six."
- 01 Marshall
- 02 McNaughton
- 03 Taylor
- 05 Hudson
- 25 Turner
- 07 Whittingham
- 08 Cowie (Conway - 67' )
- 13 Lawrence Booked
- 17 Gunnarsson Booked
- 09 Miller (Earnshaw - 73' )
- 20 Mason
- 22 Heaton
- 04 Kiss
- 11 Conway
- 23 Blake
- 10 Earnshaw
- 28 Mannone
- 02 Rosenior Booked
- 03 Dawson
- 05 Chester
- 06 Hobbs
- 04 McKenna
- 07 Stewart (Dudgeon - 66' )
- 08 Evans
- 10 Koren
- 09 Mclean
- 27 King (Fryatt - 87' )
- 24 Gulacsi
- 19 Dudgeon
- 14 Cairney
- 12 Fryatt
- 35 Cullen
Live Text Commentary
Full Time The referee brings the game to a close.90:00 +4:01
Aron Gunnarsson has a shot on goal from outside the box which misses right.90:00 +3:45
Corry Evans takes a shot. Save made by David Marshall.90:00 +2:49
The referee penalises Robert Earnshaw for handball. Vito Mannone takes the free kick.90:00 +2:41
Andrew Taylor delivers the ball, Jack Hobbs manages to make a clearance.90:00 +0:41
A cross is delivered by Craig Conway, clearance by Jack Hobbs.89:12
The referee penalises Andy Dawson for handball. Peter Whittingham has a direct shot on goal from the free kick.87:04
The referee gives a free kick against Joe Mason for handball. Free kick taken by Vito Mannone.84:55 Substitution
Substitution Joshua King leaves the field to be replaced by Matt Fryatt.84:55
Aaron Mclean concedes a free kick for a foul on Aron Gunnarsson. Peter Whittingham has an effort direct from the free kick.84:20
Liam Lawrence produces a cross, Aaron Mclean makes a clearance. Liam Lawrence takes a inswinging corner from the left by-line to the near post, clearance by Corry Evans.83:42
Liam Lawrence takes a inswinging corner to the near post.82:34
Free kick taken by Vito Mannone.82:34 Booking
Booking Aron Gunnarsson receives a yellow card.82:29
Foul by Aron Gunnarsson on Robert Koren, free kick awarded.81:40
Free kick awarded for an unfair challenge on Aron Gunnarsson by Paul McKenna. Peter Whittingham takes the direct free kick.81:04
Robert Earnshaw takes a shot. Comfortable save by Vito Mannone.79:33
The free kick is delivered right-footed by Liam Lawrence from left channel.79:33 Booking
Booking Caution for Liam Rosenior.79:26
Foul by Liam Rosenior on Robert Earnshaw, free kick awarded.
The ball is crossed by Kevin McNaughton, Robert Earnshaw takes a shot. Vito Mannone makes a save. Inswinging corner taken left-footed by Peter Whittingham from the right by-line, save by Vito Mannone.76:36
Corner taken right-footed by Robert Koren, Craig Conway manages to make a clearance.75:11
Aron Gunnarsson gives away a free kick for an unfair challenge on Corry Evans. Direct free kick taken by Robert Koren.74:30
The official flags Robert Koren offside. Free kick taken by David Marshall.73:48
The ball is delivered by Aaron Mclean, Kevin McNaughton makes a clearance. Short corner taken by Robert Koren.72:51
Shot from outside the area by Robert Earnshaw misses to the left of the target.71:58 Substitution
Substitution Robert Earnshaw joins the action as a substitute, replacing Kenny Miller.70:05
Effort from the edge of the area by Robert Koren goes wide of the right-hand post.67:22
Free kick awarded for a foul by Ben Turner on Aaron Mclean. Paul McKenna restarts play with the free kick.66:50
Andrew Taylor produces a cross, save by Vito Mannone.65:31 Substitution
Substitution Don Cowie leaves the field to be replaced by Craig Conway.65:31 Substitution
Substitution (Hull) makes a substitution, with Joe Dudgeon coming on for Cameron Stewart.65:31
Aaron Mclean gives away a free kick for an unfair challenge on Aron Gunnarsson. David Marshall takes the free kick.65:26
The ball is delivered by Liam Rosenior, clearance made by Andrew Taylor.64:11
Robert Koren takes a shot. Save by David Marshall. Short corner worked by Robert Koren.63:15
Foul by Peter Whittingham on Liam Rosenior, free kick awarded. Corry Evans takes the free kick.62:13
Kevin McNaughton produces a cross, save by Vito Mannone.61:57
A cross is delivered by Kevin McNaughton, clearance made by James Chester.60:25
Centre by Liam Lawrence, Liam Rosenior makes a clearance.59:53
Kenny Miller takes a shot from a just insdie the area and hits the post.59:27
Kevin McNaughton fouled by Cameron Stewart, the ref awards a free kick. Peter Whittingham takes the direct free kick.57:09
Peter Whittingham takes a inswinging corner to the near post, Aaron Mclean manages to make a clearance.56:28
Liam Lawrence delivers the ball, Mark Hudson takes a shot. Save by Vito Mannone.55:54
Foul by Joshua King on Don Cowie, free kick awarded. Free kick crossed left-footed by Peter Whittingham from left channel, clearance made by James Chester.54:32
Assist by Robert Koren.54:32 Goal scored
Goal! - Aaron Mclean - Cardiff 0 - 3 Hull A goal is scored by Aaron Mclean from inside the six-yard box low into the middle of the goal. Cardiff 0-3 Hull.54:09
Aaron Mclean takes a shot. David Marshall gets a block in.51:52
Joe Mason produces a cross, Kenny Miller takes a shot. Aaron Mclean gets a block in. Inswinging corner taken right-footed by Don Cowie played to the near post, Corry Evans makes a clearance.51:01
Corner taken by Peter Whittingham, clearance made by Joshua King. Don Cowie takes a inswinging corner from the left by-line played to the near post.50:38
Inswinging corner taken by Peter Whittingham, clearance made by Aaron Mclean.49:47
Peter Whittingham has shot on goal from just outside the area which goes wide of the right-hand upright.46:14
Assist on the goal came from Joshua King.46:14 Goal scored
Goal! - James Chester - Cardiff 0 - 2 Hull James Chester scores a goal from close in low into the middle of the goal. Cardiff 0-2 Hull.45:01
The game restarts for the second half.45:00 +1:13 Half time
Half Time The first half comes to an end.44:51
Don Cowie fouled by Liam Rosenior, the ref awards a free kick. Strike comes in from Peter Whittingham from the free kick, save by Vito Mannone.43:38
Andy Dawson produces a cross, Joshua King has an effort at goal from close in which goes wide left of the goal.42:58
Inswinging corner taken left-footed by Andy Dawson from the left by-line, clearance by Joe Mason.41:17 Booking
Booking Liam Lawrence is cautioned.39:58
Corner taken by Peter Whittingham from the right by-line, free kick awarded for an unfair challenge on Vito Mannone by Kenny Miller. Indirect free kick taken by Vito Mannone.39:21
Corry Evans takes a shot. Save by David Marshall.36:11
Liam Lawrence concedes a free kick for a foul on Liam Rosenior. Andy Dawson delivers the ball from the free kick left-footed from right wing.34:25
Robert Koren takes a shot. David Marshall makes a save.33:20
Robert Koren takes a shot. Mark Hudson gets a block in. Corner taken by Robert Koren from the left by-line, clearance by Liam Lawrence.28:42
Unfair challenge on Ben Turner by Aaron Mclean results in a free kick. Liam Lawrence takes the free kick.26:46
Kenny Miller gives away a free kick for an unfair challenge on Joshua King. Vito Mannone takes the indirect free kick.24:39
Unfair challenge on Robert Koren by Liam Lawrence results in a free kick. James Chester takes the free kick.22:38
The ball is swung over by Andrew Taylor, Andy Dawson makes a clearance.22:31
The ball is swung over by Don Cowie.20:39
Don Cowie decides to take a short corner.19:58
The offside flag is raised against Aaron Mclean. David Marshall takes the free kick.18:49
Joshua King sends in a cross, clearance by Mark Hudson.18:02
The ball is sent over by Andrew Taylor, Liam Rosenior makes a clearance.16:36
Aaron Mclean produces a left-footed shot from deep inside the penalty box which goes wide of the left-hand upright.15:56
Kenny Miller produces a left-footed shot from the edge of the area and misses to the left of the target.12:20
Corner taken by Don Cowie from the left by-line.11:24
Andrew Taylor sends in a cross, save by Vito Mannone.10:12
The assistant referee flags for offside against Aaron Mclean. Indirect free kick taken by Mark Hudson.9:01
Andy Dawson challenges Joe Mason unfairly and gives away a free kick. Free kick crossed left-footed by Peter Whittingham, save made by Vito Mannone.5:35 Goal scored
Goal! - Kevin McNaughton - Cardiff 0 - 1 Hull Kevin McNaughton puts the ball into his own goal. Cardiff 0-1 Hull.4:54
Assist by Andy Dawson.4:47
Joshua King takes a shot. Mark Hudson gets a block in. Inswinging corner taken left-footed by Andy Dawson from the right by-line.1:47
Centre by Liam Rosenior, save made by David Marshall.1:37
Paul McKenna sends in a cross, clearance made by Mark Hudson.0:00
The referee gets the game started.
Live data and text provided by our data suppliers