By the start of June, less than 20,000 of 160,000 refugees had been relocated under the solidarity plan put in place in 2015 to try to remedy Europe's biggest-ever migration crisis and ease the burden on frontline states Italy and Greece.
"It has been a disappointment on the continental level," Filippo Grandi, the UN's High Commissioner for Refugees, said in Barcelona as he launched a campaign in support of refugee children alongside the FC Barcelona football club.
"Only a few countries in Europe -- Greece and Italy, who are on the border in the EU, and Germany, Sweden, Austria -- they are the ones who took most of the responsibility," he said.
"If Europe is not able to share responsibility, a union of rich countries... how can we tell the rest of the world to take refugees?"
His comments came as Brussels opened infringement proceedings against Hungary, Poland and the Czech Republic for refusing to take in their share of refugees under the plan, which could see them referred to the European Court of Justice and given stiff financial penalties.