The liner operated by the Swiss-Italian company MSC Cruises broke down off the Swedish island of Gotland.
“It appears that there was a complete electrical failure. In that situation, the engines do not work,” Birger Knutsson of the rescue centre told AFP.
In a statement on Sunday evening, the cruise firm said the boat would be towed to the port of Nynashamn near Stockholm overnight, where it would organise the repatriation of its 1,800 passengers.
Travellers would be offered another cruise, valid until December 2012, the Geneva-based company said.
The MSC Opera left Southampton on May 7th for a 10-night trip taking in Stockholm, Helsinki, St Petersburg and Copenhagen, and was due to return to Southampton on Tuesday.
The massive ship began drifting at about 11:00 am (0900 GMT) and by 1730 GMT was approximately 10 kilometres (six miles) from Visby, Gotland’s main town, Knutsson said.
It was scheduled to arrive in Nynashamn towards the end of Monday morning, MSC said.
A company representative said the majority of the passengers were thought to be Europeans.