After a slow start the U's took control and scored three times with no response from the home side as they cruised to an easy win.
Despite the scoreline, it was Swindon who started the better and they were unlucky not to take the lead in the ninth minute through Sam Parkin, who saw his header from Lee Holmes' cross, tipped over the bar by keeper Dean Gerken.
After 17 minutes Swindon went close again through Jerel Ifil but his header from a Brian Howard corner sailed wide of the left hand post.
Despite playing against a gale-force wind it was the visitors who grabbed the first goal 14 minutes before the break.
Kevin Watson swung in a corner from the right-hand side and Gavin Johnson was left unmarked six yards out to score with a bullet header.
United doubled their advantage after 38 minutes when man of the match Neil Danns smashed in a shot from ten yards after Swindon failed to clear Greg Halford's cross.
Colchester made sure of the points two minutes after the interval, with Danns again involved.
The former Blackburn midfielder beat four Swindon men and forced his way into the box before teeing up Richard Garcia, who beat home keeper Rhys Evans with a side-foot shot from the edge of the box.
Swindon tried in vain to grab a consolation and Parkin went close just after the hour when he headed wide from a Holmes corner.
Colchester threatened to add to their advantage and strike duo Craig Fagan and Halford both went close towards the end, as they comfortably held on for the points.