Leaders Southampton suffered a dent to their promotion hopes with a comprehensive defeat at play-off chasing Blackpool who are now fifth.
Saints missed an early penalty with Blackpool keeper Matthew Gilks saving Billy Sharp's spot kick.
But Stephen Dobbie made no mistake to convert from 12 yards when the Tangerines won a penalty of their own.
Dobbie poked home after poor defending to double the lead and Ian Evatt completed the rout.
Southampton remain top but their lead is only two points following second-placed Reading's 4-2 victory over West Ham earlier in the day. Third-placed West Ham are six points behind Southampton with six games to play.
Saints began the game without top scorer Rickie Lambert, but Sharp should have put the visitors in front against the run of the play when they were awarded a penalty after Robert Harris brought down Guly Do Prado.
But Gilks superbly kept out Sharp's penalty and within minutes they were ahead when Morgan Schneiderlin brought down Gary Taylor-Fletcher and Dobbie scored the resulting spot kick.
Jos Hooiveld should have brought Southampton level with a close-range header when Richard Chaplow flicked on Daniel Fox's corner - a miss that instantly came back to haunt him.
From the resulting goal-kick, Taylor-Fletcher won the flick-on and Dobbie shrugged Jose Fonte aside before producing another measured finish.
Fonte did just enough to divert Alex Baptiste's header from Thomas Ince's 51st minute corner behind, but Evatt immediately cashed in on his centre-back partner's efforts.
Pre-occupied with Baptiste's threat, the next corner was arrowed to the back post where Evatt thumped home.
Blackpool briefly threatened to run riot and Dobbie had a shot blocked after Ince and Taylor-Fletcher linked up well.
In the closing stages, Holloway's men saw out the match in relative comfort.
When Southampton did find a way through they were wasteful. Do Prado found space at the back post to tee-up Adam Lallana, but the midfielder uncharacteristically slashed horribly wide.
Sorry, we were unable to load match stats, please try again.