The passenger ferry, named Sewol, carrying mainly school students, was travelling from the port of Incheon, in the north-west, to the southern resort island of Jeju.
A major rescue effort is under way, using dozens of ships and helicopters.
Several hours after the disaster, at least 290 people remained missing, local media said.
South Korean officials had earlier said that 368 people had been plucked to safety, but later said there had been a counting error.
They have now revised down the number rescued to about 180, Yonhap news agency reported.
Two people are known to have died and at least 13 others have been injured, reports say.
An official from Sanwon High School in Seoul’s Ansan suburb told Reuters that all 338 students and teachers aboard the ferry had been rescued, although that information was not immediately confirmed by authorities involved in the rescue operation.
The students aboard the Sewol were on their way to the resort island of Jeju on a school trip, according to local reports.
Images showed the ferry listing at a severe angle and then later almost completely submerged, with only a small part of its hull visible.
Pictures showed rescue teams balanced on the sinking hull pulling teenagers from cabin windows. Some of their classmates jumped into the sea as the ship went down.
Reports suggest some of those rescued were picked up by nearby commercial vessels.
Navy divers were now searching the scene for those unaccounted for, officials said.
One body, of a female crew member, had been recovered from the ship, the coastguard said. Another person is reported to have died after being rescued.
One student told local media her friends became trapped.
It is not yet clear what caused the incident, but witnesses described hearing an impact, before the ship listed and quickly sank.
One passenger told the YTN news channel: “We heard a big thumping sound and the boat stopped.
“The boat is tilting and we have to hold on to something to stay seated,” the passenger said.
Another passenger said the ship was “shaking and tilting”, with people tripping and bumping into each other.
Weather conditions were described as fine.
However, Reuters reported that heavy fog had set in overnight off the west coast, leading to the cancellation of many island passenger ferry services.
The Busan Regional Maritime Affairs & Port Administration confirmed that the ferry sent a distress call Wednesday morning local time.
News agencies said the ferry had sent out a distress signal about 12 miles off the island of Byungpoong at about 09:00 local time.
Earlier reports put the number of passengers on the ferry at about 350. The Sewol is reported to have a capacity of up to 900 people. Shipping records show it was built in Japan in 1994.
547p-6gSxNI Z2Dw0D9P2owImage source: Wikimedia Commons President-elect Donald Trump celebrated his election victory at the Ultimate Fighting…
Millions of voters across the US chose to return Donald Trump to the White House…
Donald Trump declares victory in the US election as he addresses jubilant supporters in Florida.…
Stocks around the world are rising as Donald Trump appears to be on the cusp…
Donald Trump has won Pennsylvania, North Carolina and Georgia and taken a lead over Kamala…
Quincy Jones, the celebrated musician and producer who worked with Michael Jackson, Frank Sinatra, Ray…