Colchester United moved into the play-off positions after a fantastic away win in Wiltshire on Friday night.
Goals from Frankie Kent, Mikael Mandron and Sammie Szmodics moved John McGreal's side up to fifth place in the League Two table.
They went behind on thirty seven minutes but equalised through Kent in injury time of the first half.
Mandron put them ahead an hour in, and then Szmodics scored a third less than two minutes after Swindon had levelled things up at 2-2.
There was one enforced change for John McGreal, with the injured Ryan Inniss being replaced by Kyel Reid.
That change necessitated a change in formation as well, with the U’s going to a four man defence, with two banks of three ahead of them.
The game started with the U’s on the front foot, but failed to test the home keeper despite the dominance of possession.
In fact, the only real talking point of the opening minutes was the booking of Kent, who got the yellow card for pulling back Woolery after having his clearance blocked.
The first shot on either goal came for the hosts on fifteen minutes, but Mullins’ effort flew safely over Sam Walker’s crossbar.
And it was another ten minutes before the U’s had their first shot, and the result was the same from Kane Vincent-Young at the end of a burst forward from the left back.
The first real quality in the home side’s attacking came on thirty five minutes, and it resulted in the opening goal of the game.
Ryan Jackson was harshly adjudged to have committed a foul out on the right to give the hosts a free kick.
Matt Taylor whipped the ball in and Kaiyne Woolery reacted first to the knockdown and drilled his effort firmly past Walker to make it 1-0.
The U’s didn’t really deserve to be behind, and got an injury time leveller thanks to centre half Kent.
A corner was taken by Reid, and when the ball dropped for him, Kent volleyed into the far corner from the near post he took up from the corner.
That was the final action of the half, and an even score was probably right for the forty five minutes.
Having scored that late leveller, the U’s came out for the second half with purpose and it only took two minutes to get a sight of goal.
Reid got into a shooting position, but his effort flew well wide.
Their fast start to the half was rewarded just after the hour mark, with Mandron powering a header in from another effective Reid free kick, after Kane Vincent-Young was fouled wide on the left.
Reid, who was proving instrumental in a lot of the forward play for the U’s, then hit the wall with a free kick before shooting wide from the rebound.
Szmodics was next to try his luck, but home keeper Vigouroux tipped the effort wide for a corner.
Another set piece was costly for the U’s on seventy five minutes, with sub Gordon drilling home from fifteen yards out after a corner wasn’t cleared well enough.
The U’s response was swift though, as Szmodcis regained the lead less than two minutes later.
A great move started by Comley, continued by Eastman and Wright, was expertly finished by the top scorer, making it ten in nineteen games this season.
This goal took the wind out of any home sails, and the U’s comfortably saw out the remaining minutes.
In fact, they could have gone further ahead in injury time, but Odelusi hit his first time effort narrowly wide after great work from Mandron.
It didn’t matter though, with the final whistle signalling a 3-2 win for the U’s, and a jump into fifth place and only two points from the automatic promotion places in League Two.