Missiles struck the crowded facility in Qah, in opposition-held Idlib province, destroying tents and sparking fires, rescue workers and medics said. Most of the victims were children and women.
A maternity hospital was also damaged, and four aid workers were hurt.
Activists alleged that the missiles were fired by pro-government forces.
Idlib, which is dominated by jihadist groups, is the last stronghold of the opposition to Syrian President Bashar al-Assad.
The UN estimates that region is home to 3 million people, including a million children. More than 40% of them come from other previously opposition-held areas.
Qah, which is close to the border with Turkey, is one of the most densely populated camps in Syria.
“I find it sickening that missiles hit vulnerable civilians, including elderly people, women and children sheltering in tents and makeshift shelters in a camp for internally displaced people,” said Mark Cutts, the UN’s deputy regional humanitarian co-ordinator for the Syria crisis.
“This horrific incident needs to be fully investigated,” he added.
Since late April, the UN Office for the High Commissioner for Human Rights (OHCHR) has verified more than 1,000 civilian casualties, hundreds of them children, in north-western Syria as a result of hostilities between pro-government and opposition forces.
Dozens of attacks against medical facilities and staff have also been verified.
A ceasefire negotiated by Russia, whose military campaign in support of Mr Assad has turned the tide of the civil war in his favour, and Turkey, which backs the opposition, halted a government assault on Idlib in August. But sporadic fighting has continued.