Billy Sharp missed a late penalty as Sheffield United were condemned to their second consecutive League One defeat.
George Moncur’s brace and Marvin Sordell’s 20-yard strike saw the U’s leap out of the relegation zone after Billy Sharp’s penalty and Martyn Woolford’s effort looked destined to give the Blades a share of the spoils.
Having earlier despatched a penalty past Jamie Jones, Sharp saw his second effort from 12 yards saved after going the same way.
Moncur’s first came in the sixth minute after former Bolton man Sordell played him in behind the hosts’ sleeping defence.
The 22-year-old then doubled the lead with a calm 23rd-minute finish following a counter-attack.
Six minutes after the restart Woolford powered his way into the box before being bundled down by Owen Garvan, Sharp neatly slotting home for his fourth goal of the season.
Ten minutes later Woolford equalised with a left-footed effort from inside the area.
Sordell stole all three points eight minutes from time, rocketing his effort from outside the area into the bottom corner, before Sharp failed to capitalise from the penalty spot.
Sharp had been chopped down by George Elokobi, who was sent off for a second booking, as Jones saved the points for the visitors.
Sheffield United: Howard, Freeman, Collins, Edgar, McEveley, Campbell-Ryce (Higdon 89), Basham, Baxter, Woolford (Scougall 84), Sharp, Sammon (McNulty 55). Unused substitutes: Alcock, Reed, Long, K Wallace.
Colchester: Jones, Garvan, Eastman, Elokobi, Briggs, Massey, Moncur (Kent 87), Edwards, Vincent-Young, Sordell (Bonne 90), Harriott (Ambrose 75). Unused substitutes: Parish, Wynter, Szmodics, Sembie-Ferris.
Referee: D Handley (Lancashire).