NHL clubs had reportedly pressed for financial compensation from the IOC in return for suspending its season for three weeks in February.
"This must be a huge disappointment for the players who definitely wanted to play at the Olympic Winter Games Pyeongchang 2018," said an IOC statement released within hours of the NHL announcement.
"The IOC feels very sorry for the athletes."
NHL clubs had reportedly pressed for financial compensation from the IOC in return for suspending its season for three weeks in February. But the IOC said it could not go beyond the travel and insurance compensation offered for previous Winter Games.
"The decision is even more regrettable, as the International Ice Hockey Federation (IIHF) had offered the same conditions to the NHL as at previous Olympic Games, where the insurance and travel costs were covered," said the Olympic leadership.
"The IOC, which distributes 90 per cent of its revenue for the development of sport in the world, obviously cannot treat a national commercial league better than not-for-profit international sports federations which are developing sport globally."
The IOC insisted that even without the star players, the Pyeongchang ice-hockey tournament "will nonetheless be a very exciting one, because the players from all the other professional ice hockey leagues and their athletes will participate, and will be very much welcomed by their Olympic teams."
The NHL Players' Association (NHLPA) and top players including New York Rangers goalie Henrik Lundqvist, who won Olympic gold in 2006 with Sweden, have condemned the NHL move.
Washington Capitals star Alex Ovechkin has said he will take part in the Games for Russia no matter what his team says.