Tommy Smith scored twice as Ipswich Town boosted their chances of avoiding relegation with a fine victory over promotion-chasing Middlesbrough.
Smith opened the scoring with a powerful header from Aaron Cresswell's corner before David McGoldrick doubled the lead with a long-range drive.
Aaron McLean made it 3-0 with an impressive finish before another Smith header completed the scoring.
Ipswich Town's goal rush
It took Ipswich 40 minutes to score four goals against Middlesbrough. Their previous four Championship goals took five hours and 57 minutes to score
Middlesbrough went close through Grant Leadbitter's long-range attempt.
It was a bad day for Tony Mowbray's team, who are six points from an automatic promotion spot after a fourth straight league defeat.
Ipswich have had little to smile about this season but their biggest win of the campaign will give Mick McCarthy's hope of avoiding relegation.
There was little evidence of what was to come when Smith broke the deadlock seven minutes from half-time with a fine header.
Boro found themselves 2-0 behind after McGoldrick won the ball in midfield before shooting from outside the box in the 47th minute.
McLean shook off his man before curling home expertly from outside the box for the third.
Middlesbrough's day to forget ended when Smith found the target with another header 12 minutes from time.
Ipswich stand-in manager Terry Connor:
"After our second goal we blossomed and grew in confidence and belief.
"The two goals were a bit of payback for Tommy [Smith], for all the times he's been in there and nearly scored, when the flight of the ball has just beaten him.
"You have to keep persevering and this week he managed to score two superb headed goals."
Middlesbrough manager Tony Mowbray:
"It was a poor performance from us and there are no excuses.
"We came here in a positive mood thinking we could get three points, hoping to push on and put pressure on the top two again.
"Now we're looking for a reaction because today wasn't good enough."
Live Text Commentary
Full Time The referee blows for the end of the match.90:00 +3:34
Shot by Anthony Wordsworth from outside the box goes over the target.89:31
Daryl Murphy challenges Faris Haroun unfairly and gives away a free kick. Direct free kick taken by Faris Haroun.87:10
Frank Nouble fouled by Andre Bikey, the ref awards a free kick. Carlos Edwards takes the free kick.85:17
Free kick taken by Scott Loach.85:17 Substitution
Substitution (Ipswich) makes a substitution, with Andy Drury coming on for Luke Hyam.85:17
The assistant referee signals for offside against Kieron Dyer.83:18
Free kick awarded for an unfair challenge on Frank Nouble by Seb Hines. Anthony Wordsworth takes the direct free kick.81:52
Frank Nouble concedes a free kick for a foul on Andre Bikey. Andre Bikey takes the direct free kick.80:09
Foul by Frank Nouble on Faris Haroun, free kick awarded. Faris Haroun restarts play with the free kick.79:10
Direct free kick taken by Faris Haroun.79:10 Booking
Booking Guirane N'Daw is given a yellow card.79:03
Free kick awarded for a foul by Guirane N'Daw on Kieron Dyer.77:38
Carlos Edwards provided the assist for the goal.77:38 Goal scored
Goal! - Tommy Smith - Ipswich 4 - 0 Middlesbro Tommy Smith finds the net with a headed goal from close range. Ipswich 4-0 Middlesbrough.76:21
Carlos Edwards takes the outswinging corner,76:21 Substitution
Substitution (Ipswich) makes a substitution, with Anthony Wordsworth coming on for David McGoldrick.76:21
Shot by Carlos Edwards from 30 yards. Jason Steele makes a save.71:19
Guirane N'Daw gives away a free kick for an unfair challenge on Kieron Dyer. Direct free kick taken by Kieron Dyer.70:35
The ball is delivered by Seb Hines, Rhys Williams produces a right-footed shot from deep inside the penalty box which goes wide of the left-hand upright.
Seb Hines gives away a free kick for an unfair challenge on Daryl Murphy. Aaron Cresswell takes the free kick.65:14 Substitution
Substitution Frank Nouble joins the action as a substitute, replacing Aaron Mclean.64:54
Luke Hyam has an effort at goal from outside the penalty box which goes wide left of the goal.64:16 Substitution
Substitution Jonathan Woodgate leaves the field to be replaced by Seb Hines.63:59
Carlos Edwards takes a shot. Save made by Jason Steele.62:59
Centre by George Friend, Scott Loach makes a save.61:17
Jason Steele restarts play with the free kick.61:17 Substitution
Substitution Marvin Emnes leaves the field to be replaced by Adam Reach.61:17
David McGoldrick gives away a free kick for an unfair challenge on Jonathan Woodgate.59:12
The ball is swung over by Daryl Murphy.56:58
Outswinging corner taken by Aaron Cresswell from the left by-line, David McGoldrick takes a shot from inside the box clearing the bar.55:38
Assist by Aaron Cresswell.55:38 Goal scored
Goal! - Aaron Mclean - Ipswich 3 - 0 Middlesbro Goal scored by Aaron Mclean from outside the penalty box high into the middle of the goal. Ipswich 3-0 Middlesbrough.54:01
Guirane N'Daw gives away a free kick for an unfair challenge on Josh McEachran. Direct free kick taken by Andre Bikey.52:46
The referee blows for offside. Jason Steele takes the indirect free kick.51:29
Drilled right-footed shot by Grant Leadbitter. Save by Scott Loach.50:32
Guirane N'Daw challenges Josh McEachran unfairly and gives away a free kick. Free kick taken by Kieron Dyer.49:44
The referee blows for offside. Scott Loach takes the direct free kick.46:56
Assist on the goal came from Aaron Mclean.46:56 Goal scored
Goal! - David McGoldrick - Ipswich 2 - 0 Middlesbro David McGoldrick scores a goal from outside the penalty box to the bottom left corner of the goal. Ipswich 2-0 Middlesbrough.45:35
The ball is swung over by Rhys Williams, Close range headed effort by Lukas Jutkiewicz goes wide of the left-hand post.45:02
Free kick awarded for a foul by Guirane N'Daw on Marvin Emnes. Faris Haroun takes the direct free kick.45:01
The referee gets the second half underway.45:01 Substitution
Substitution Josh McEachran on for Emmanuel Ledesma.45:00 +1:03 Half time
Half Time The players leave the pitch at half time.43:40
Free kick awarded for an unfair challenge on Luke Hyam by Faris Haroun. Aaron Cresswell restarts play with the free kick.41:40
Emmanuel Ledesma gives away a free kick for an unfair challenge on Aaron Mclean. Aaron Cresswell delivers the ball from the free kick left-footed from left wing, clearance by Grant Leadbitter.39:58
The official flags Marvin Emnes offside. Indirect free kick taken by Luke Chambers.37:40
Assist on the goal came from Aaron Cresswell.37:40 Goal scored
Goal! - Tommy Smith - Ipswich 1 - 0 Middlesbro Tommy Smith finds the back of the net with a headed goal from close range. Ipswich 1-0 Middlesbrough.36:45
Aaron Cresswell takes the inswinging corner,35:58
The ball is swung over by Rhys Williams.31:43
Centre by Luke Hyam, clearance by Jonathan Woodgate. Corner taken by Aaron Cresswell from the right by-line to the near post, clearance made by Rhys Williams.30:37
Daryl Murphy produces a drilled left-footed shot from deep inside the penalty box which goes wide of the left-hand post.30:14
Luke Hyam fouled by Kieron Dyer, the ref awards a free kick. Free kick taken by Aaron Cresswell.28:11
Aaron Cresswell takes the outswinging corner, save made by Jason Steele. Aaron Cresswell takes the inswinging corner, Jason Steele makes a save.27:40
David McGoldrick takes a shot. Save by Jason Steele.25:54
The ball is delivered by Richard Stearman.23:20
Lukas Jutkiewicz delivers the ball, Aaron Cresswell makes a clearance. Corner taken left-footed by Emmanuel Ledesma from the right by-line to the near post, David McGoldrick manages to make a clearance.22:29
Shot by Daryl Murphy from a long way out goes over the net.20:43
The referee blows for offside against Kieron Dyer. Scott Loach restarts play with the free kick.19:58
Shot from long range by Carlos Edwards goes wide of the left-hand post.19:17
Emmanuel Ledesma takes a shot from a long way out clearing the bar.17:52
George Friend delivers the ball, clearance by Aaron Cresswell.14:36
Foul by David McGoldrick on Grant Leadbitter, free kick awarded. Jason Steele takes the free kick.13:54
The ball is crossed by Daryl Murphy.13:01
George Friend delivers the ball, Tommy Smith makes a clearance. Long range effort by Grant Leadbitter goes wide right of the net.11:54
The ball is swung over by Aaron Cresswell, blocked by Faris Haroun. Outswinging corner taken by Aaron Cresswell, Headed effort from inside the area by Luke Chambers misses to the left of the target.10:49
Free kick awarded for a foul by Faris Haroun on Aaron Mclean. The free kick is delivered left-footed by Aaron Cresswell from left channel.7:13
David McGoldrick produces a cross, save by Jason Steele.4:46
The ball is delivered by David McGoldrick, clearance made by Andre Bikey.3:03
Unfair challenge on Marvin Emnes by Luke Hyam results in a free kick. Emmanuel Ledesma delivers the ball from the free kick left-footed from left channel, save by Scott Loach.2:27
Free kick awarded for a foul by Luke Hyam on Kieron Dyer. Andre Bikey takes the direct free kick.1:14
Emmanuel Ledesma takes a inswinging corner from the right by-line to the near post, Luke Chambers manages to make a clearance.0:12
Luke Chambers gives away a free kick for an unfair challenge on Marvin Emnes. Direct free kick taken by Grant Leadbitter.0:00
The ref blows the whistle to start the match.
Live data and text provided by our data suppliers