The IOC announced the decision after examining evidence of state-sponsored doping over several years that reached its zenith at the 2014 Winter Olympics in Sochi, Russia.
The IOC also banned Russia's Deputy Prime Minister Vitaly Mutko for life over his involvement in the scandal -- he was the Russian Sports Minister during the Sochi Games.
That will raise questions as to whether Mutko can continue in his role as head of the organising committee for the 2018 football World Cup, which Russia will host.
Mutko, who was also banned from the Rio 2016 Summer Games, had been implicated in the WADA (World Anti-Doping Agency)-commissioned McLaren report.
Nations have in the past been barred from taking part in the Olympics -- notably South Africa during the apartheid years -- but none has ever been handed a blanket suspension over doping.
Russian athletes, however, would be able to take part in the Games, the IOC said, as independent competitors "under the Olympic flag".
"This was an unprecedented attack on the integrity of the Olympic Games and sport," said IOC president Thomas Bach in a statement.
"The IOC... has issued proportional sanctions for this systemic manipulation while protecting the clean athletes.
"This should draw a line under this damaging episode and serve as a catalyst for a more effective anti-doping system led by WADA."
The IOC's decision to choose a more moderate path, instead of a blanket ban, does offer some Russian athletes a path to competing in the Games in Pyeongchang, South Korea -- although that will be by invitation only and dependent on a stringent testing programme.
"The IOC, at its absolute discretion, will ultimately determine the athletes to be invited from the list," said the IOC's statement, ruling out all those to have previously committed a doping violation.
Nevertheless, the president of Russia's Bobsleigh Federation, Alexander Zubkov, told Russian television: "This is humiliation. This is a punch in the stomach."
The US Olympic Committee praised the IOC's announcement.
"The IOC took a strong and principled decision. There were no perfect options, but this decision will clearly make it less likely that this ever happens again," it said.
Those athletes who do go to the Games, which start on February 9, will participate under the name "Olympic Athlete from Russia".
They will compete with a uniform carrying that name, while the Olympic anthem -- and not the Russian one -- will be played at any medal ceremony.
The IOC's decision comes just days after the draw for next year's World Cup, which Moscow hopes will elevate the nation's status as a sporting superpower.
Russia have been stripped of 11 of their 33 Sochi medals for cheating, meaning they have lost their position at the top of the medals table to Norway.
Last month, athletics' ruling body the International Association of Athletics Federations also maintained its two-year suspension of Russia from the sport, imposed over doping claims.
(Except for the headline, this story has not been edited by NDTV staff and is published from a syndicated feed.)