The Viking Sky lost power and started drifting mid-afternoon, two kilometres (1.2 miles) off More og Romsdal, prompting the captain to send out a distress call.
The crew managed to restart one of the engines and drop anchor but authorities decided it was too risky for those on board to remain.
Five helicopters were scrambled along with coastguard and other rescue vessels.
"I have never seen anything so frightening," said one of the passengers who was rescued, Janet Jacob.
"I started to pray. I prayed for the safety of everyone on board," she told the NRK television channel.
Tor Andre Franck, the head of the police operations, said: "The boat only has one working engine and the winds are rather strong. Therefore we would prefer to have the passengers on land rather than on board the ship."
The Viking Sky sent out a distress signal due to "engine problems in bad weather", southern Norway's rescue centre said on Twitter.
By 4:30 pm (1430 GMT) 100 people had been evacuated, with each helicopter able to take 15-20 people per airlift.
"It will take time to evacuate everyone," Franck said.
The ship was travelling south en route from Tromso to Stavanger when it got into trouble in an area that has claimed many ships.
"It is dangerous to encounter engine problems in these waters which hide numerous reefs," Franck said.
A reception centre has been set up in a gym on shore to accommodate the evacuees, whose nationalities are not yet known.
Another vessel had been despatched to try to tow the Viking Sky into port, possibly removing the need for the airlift.
"The boat is stable. It has dropped anchor and one of its engines is working," said a rescue centre spokesman, Borghild Eldoen.
"For the moment everything appears to be going well," added another spokesman, Einar Knutsen, although the rescue centre said eight people had suffered minor injuries.
The area where the ship is stranded, known as Hustadvika, is notoriously difficult to navigate.
The shallow, ten nautical mile section of coastline is known for its many small islands and reefs.
"Hustadvika is one of the most notorious maritime areas that we have," Odd Roar Lange, a journalist specialising in tourism, told public broadcaster NRK.
In their time, even the Vikings, known to have been accomplished navigators, hesitated to venture into the Hustadvika, preferring instead to transport their boats by land from one fjord to another.
Operated by the Norwegian firm Viking Ocean Cruisers, the Viking Sky is a modern cruise ship launched in 2017 with a capacity of 930 passengers plus crew.