Heavy fog caused several delays at Pearson International Airport, and the weather conditions caused one flight to arrive in Toronto almost 17 hours after it was supposed to land.

The Sunwing flight from Varadero, Cuba was supposed to touch down late Wednesday night, but it was diverted to Ottawa because of the poor visibility.

The fog lifted about an hour later, so the plane returned to Toronto. But as the aircraft neared, the fog rolled back in, causing the plane to be diverted to Ottawa a second time.

The 190 passengers were forced to sit in the plane for hours because there were not enough custom officials available to screen them.

The passengers eventually walked off the plane at about 7:30 a.m. Some complained that they were given little food and water.

"It would have been better if we just stayed in Ottawa and they had at least de-planed so we were a little bit more comfortable," said Kim Paulsen.

The passengers finally arrived in Toronto just before noon on Thursday.

"I'm tired, I'm frustrated and disappointed," Oshawa resident Kimberly Murray said after stepping off the plane. "I think that's the worst flight I've ever been on in my life."

But not all those on board were angry at the airline.

"They did as best as they could, they serviced us," said Monique Wass.

Passengers have been given an apology letter and travel voucher from Sunwing.

"Any passengers who felt that they were inconvenienced -- we agree with them, absolutely they were inconvenienced, and it's a very, very unfortunate sequence of events," said Sunwing spokesman Lawrence Elliot.

With a report from CTV's MairiAnna Bachynsky