Cheltenham Town lost their first Sky Bet League Two home game since October as Omar Sowunmi's stunning volley and Jordan Green's late finish ensured that Yeovil Town left the LCI Rail Stadium with athree points on Boxing Day.
Kevin Dawson thought he had given Cheltenham the lead early on in the second half but he was flagged offside after turning in Mo Eisa's cross-shot.
The Glovers went ahead with just over 20 minutes to go as Sowunmi hit a brilliant volley past the helpless Scott Flinders, who could do nothing about it.
A mistake from Jamie Grimes then allowed Jordan Green to run in two on one and he placed the ball under Flinders to seal a rare away triumph for the Glovers.
Gary Johnson made one change to the team that beat Barnet away as Jerell Sellars started on the left with Freddie Hinds dropping to the bench for the visit of the Glovers.
Dan Holman was also named amongst the substitutes after the forward returned from his loan spell at National League side Boreham Wood.
The match started with a bang as with just ten seconds on the clock James Bailey came out worse in a crunching 50/50 challenge with Harry Pell and was eventually subbed off in the fourth minute.
The first chance fell at the feet of Eisa, who hit a half-volley high into the Hazelwoods Stand after a clever lobbed through pass by Harry Pell.
Moments later Joe Morrell's dinked free-kick found Eisa on the corner of the six yard box but his deflected effort was headed off the line, Taylor Moore's follow up was also blocked as Cheltenham had the better of the early exchanges.
Francois Zoko had Yeovil's first sight of goal after a neat cut-back by Jake Gray on 17 minutes, but the Ivorian forward blasted the ball into the trees behind the Speedy Skips Stand.
Eisa then did well to bring down Moore's finessed cross but once again could not keep his shot down, Tom James then struck a sweet free-kick at the other end that dipped onto the roof of the net as the Glovers grew into the game.
Another set-piece from the visitors caused more problems as Otis Khan set up Jake Gray but the former Robins loanee had his shot blocked behind for a corner.
Sellars then had his first sight of goal for Cheltenham after the ball was quickly switched from right to left but Arthur Krysiak was not tested yet again as the attempt sailed over.
Both Sam Surridge and Gray hit shots wide as Darren Way's side threatened before the break but the half ended with another wayward attempt from Sellars, in a 45 minutes with plenty of chances but few shots on target.
Much like the first-half, Cheltenham were quick out of the blocks after the interval and after strong tackles from Morrell and Nigel Atangana in the middle of the park, Moore crossed for Pell, but he couldn't get enough on the end of it, failing to test Krysiak.
A poor free-kick from Moore then allowed Yeovil to break and Zoko's deflected cross fell kindly for Gray who smashed against the crossbar from a few yards out in what was a major let off for the home side.
The Robins get the ball in the net after 56 minutes when Atangana played Eisa clean through but his goal-bound shot was turned in by the offside Dawson, who was agonisingly denied a goal against his former team.
The match was opening up as the challenges started flying in, both Connor Smith and Nathan Smith were booked as the hosts began to pile on the pressure.
But against the run of play Yeovil took the lead courtesy of a stunning strike from Omar Sowunmi after 68 minutes.
The big defender struck a sweet volley into the top corner after the Robins failed to clear James' long-throw into the box, leaving Cheltenham with an uphill task.
Johnson responded by bringing on both Brian Graham and Freddie Hinds, which was soon followed by Danny Wright, as the hosts went all out attack in search of an equaliser.
But after Yeovil broke through two on one, Grimes won the ball only to give it away again and Green slotted underneath Flinders to double the visitors lead in the 84th minute.
CHELTENHAM TOWN: Flinders, Grimes, Atangana (Hinds 70), Pell, Dawson, Winchester, Boyle, Eisa (Graham 70), Morrell, Sellars (Wright 76), Moore. Subs not used: Lovett (Gk), Storer, Holman, Bower.
YEOVIL TOWN: Krysiak, Smith, Worthington, Khan (Olomola 88), Gray (Green 65), Dickson, Zoko, Surridge, Bailey (C) (Smith 4), Sowunmi, James. Subs not used: Maddison (Gk), Davies, Mugabi, Santos.
REFEREE: Christopher Sarginson
ATTENDANCE: 3484 (345 from Yeovil)