Mikhail Bochkarev, 51, was arrested on September 21 at Oslo airport after attending a seminar in Norway's parliament, accused of having collected data on the building and its network.
A Norwegian court ordered his release on Thursday, the judge ruling that investigators had failed to substantiate their case. But Bochkarev was kept in custody after the PST intelligence agency appealed the decision.
On Friday however, the agency tweeted: "The PST has decided to withdraw its appeal. He is released today." They offered no explanation for the decision.
There had been speculation that Bochkarev might be used as leverage in efforts to obtain the release of a Norwegian held in Russia on suspicion of spying, although the PST has denied any connection between the two cases.
Frode Berg was arrested in April and is still awaiting trial. Berg admitted to having helped the Norwegian intelligence services by acting as a courier several times.
Russia had denounced the charges against Bochkarev as "false" and "absurd", summoning the Norwegian ambassador in Moscow in protest.
Norwegian officials regularly accuse Russia of attempted hacking and espionage.