After a solid performance in the ski jump, the 22-year-old began the 10km race in tenth place and put on a stellar performance to pip World Cup leader Riiber to the line.
Norway's Espen Bjoernstad led the race until the halfway point when compatriot Riiber took pole position, while Geiger was battling 11 seconds behind in third place.
But with a quarter of the race left, Geiger went into the lead and never relinquished the position crossing the finish line 1.6 seconds ahead of Riiber.
After triumphing in the first five events of the season, Riiber was the man to beat but he suffered his first loss at the hands of Geiger, who claimed his second ever World Cup victory.
Germany's Fabian Riessle secured his ninth podium position in Ramsau since 2012, as he claimed third place.
Stages 19 & 21
Greatest Tennis Players