It wasn’t immediately clear if the North Korean military mistook the shop for the military intelligence site.
Islanders said the barrage midafternoon Tuesday took them by surprise.
“I heard the sound of artillery, and I felt that something was flying over my head,” said Lim Jung-eun, 36, who fled Yeonpyeong island with three children, including a 9-month-old strapped to her back. “Then the mountain caught on fire.”
About 10 homes were directly hit and 30 totally destroyed in the barrage, a local official said by telephone. She asked not to be identified. About 1,700 civilians live on Yeonpyeong in addition to troops stationed on the island just seven miles from North Korean shores.
Hundreds of island residents arrived in Incheon on rescue ships with stories of panic and chaos.
“Right after I saw the news, I called my daughter,” said Chung Doo-sun, 55, who lives in nearby Gimpo city. “She was crying and told me the windows of her home were all shattered.”
One 68-year-old said he still has bitter memories about the Korean War.
“North Korea has not changed at all,” he said, asking to be identified only by his surname, Kim. “They are so cruel.”
The chaos at the port contrasted with the calm in Seoul, the South Korean capital of more than 10 million people. Still, the skirmish weighed on people’s minds.
“I never felt anxious in the past, even after the Cheonan warship incident,” said Lee Ho-chul, 30. “But it feels different this time since civilians were hurt.”
In Young-joo called for a strong response. “Our government has to react very strongly against North Korea after they invaded us in such a daring way,” she said.
Outside Seoul’s Defense Ministry, protesters stomped on photos of North Korean leader Kim Jong-il and burned his nation’s flag.
South Korea said it would strengthen military forces in the western waters near Yeonpyeong and halt shipments of humanitarian aid to the communist North.
The skirmish began after North Korea warned the South to stop carrying out military drills near their sea border, South Korean officials said.
When Seoul refused and fired artillery into disputed waters — away from the North Korean shore — the North retaliated by shelling Yeonpyeong.