Duns picked up the three league points at a wet Woodside Park with striker Martyn Tait scoring a first-half hat-trick.
It was a bad afternoon for United, who went in at half-time four goals down, and although they managed to tighten the defence in the second half, they also had keeper Elliott Turnbull sent off.
“The result looks bad, but we did not play that badly,” commented Kelso manager Prof Blaikie.
“The Duns keeper Stephen Mason had three great saves in the first half and unfortunately Darren Bowie at the heart of our defence had a nightmare, which Martyn Tait exploited.”
The visitors got off to a flyer. With just two minutes of the game gone, Bowie was robbed by Tait, who drove forward and unleashed a shot past the diving Turnbull.
This stung the home side into action and Duns keeper Mason was at full stretch for a spell.
Midway through the half, Duns increased their lead when Steven Shennan beat a couple of defenders before crossing into the box, where Tait outjumped Bowie to place his header in the net.
Just after the half-hour mark, United got back in the game when a Grant Gass cross from the left was deflected off a defender and looped into the six-yard box, where Jordan Lauder prodded the ball home.
Duns made it three in the 39th minute when Tait again took advantage of some poor marking and waltzed through to chip over the advancing Turnbull.
In the penultimate minute of the half, the visitors increased their advantage following some good work by Shennan, who found James Brydon at the edge of the box and the midfielder dispatched a shot beyond the United keeper.
Turnbull was called into action early in the second half when he did well to stop a Shennan shot, however, this was to be his last save as just before the hour he was shown the red card. Gass attempted a 40 yard backpass to his keeper, but striker Shennan just managed to get to the ball first and the United no 1 brought down the Duns man just outside the box. Referee Paul Crosbie decided that Turnbull was the last man and sent him for an early bath.
The game was wrapped up in the 83rd minute when Stuart Coyle beat a couple of defenders before placing the ball in the path of fellow substitute Craig Beasley to strike home past stand-in keeper McClure.