The 9,700-ton ferry, the Mangyongbong 92, was escorted into the eastern South Korean port of Mukho, where throngs of protesters held large photos of the North's leader, Kim Jong-un, with black crosses drawn through them.
The ministry said it had decided to temporarily lift a ban on North Korean ships to "support a successful hosting of the Olympics," which begin on Friday. It is also a fresh sign of a thaw in inter-Korean relations after months of tensions over North Korea's nuclear and missile programs.
Seoul banned all North Korean ships entering its ports and cut off most inter-Korean exchanges, including tourism, trade and aid, in 2010 in the wake of a torpedo attack on a South Korean navy warship that killed 46 sailors. North Korea denied involvement.
Dozens of riot police with shields kept order as the ferry berthed. Protesters also waved South Korean and US flags while singing the South Korean national anthem. No unified Korea flags could be spotted in the crowd.
South and North Korea will march under a unified Korea flag at the opening of the Games while the two Koreas will also field a united women's ice hockey team.
The art troupe from the North is led by star singer Hyun Song Wol and is scheduled to perform at Gangneung, near the Games venue of Pyeongchang, on Thursday and in Seoul on Sunday.
It will use the vessel for transportation and lodging, the Unification Ministry said, while a ministry official said a small welcoming ceremony would be held to greet the visitors. The official asked not to be named due to the sensitivity.
The Mangyongbong 92 last crossed into South Korean waters when it carried a North Korean cheer squad for the 2002 Asian Games in the port city of Busan.