The decision stems from an ongoing investigation into state-sponsored Russian doping during the 2014 Winter Games in Sochi.
"This was an unprecedented attack on the integrity of the Olympic Games and sport," IOC President Thomas Bach said.
Russian athletes who test clean will still be able to compete in the Olympics as neutral athletes. The Russian flag will not fly and its anthem will not play during the opening, closing and medal ceremonies.
According to the IOC, Russian athletes will instead compete as "Olympic Athlete from Russia (OAR)," under the Olympic flag. The Olympic anthem will play when Russian athletes earn medals.
The IOC also expelled Russian Olympic Committee (ROC) members from the IOC, and ordered the ROC to reimburse $15 million that was used for the investigation.