"Countries with more means put limits on refugees, while Turkey opened its arms to everyone without discriminating", he said, as quoted by the Anadolu news agency.
He also reminded the European Union about the funds that it promised to Ankara for dealing with the flow of refugees.
"EU promised a total of €6 billion [$6.69 billion] to Turkey to help Syrian refugees, but we only got €2 billion[$2.23 billion]", Erdogan complained.
The Turkish president also mentioned that about 371,000 refugees had returned to the parts of Syria cleared by Turkey in a recent military operation.
"I believe that this number will reach one million in the first phase, if we can realize the project I brought forward in the UN General Assembly", he said.
During his speech in the latest United Nations General Assembly, Erdogan offered to resettle approximately 3 million people in a safe zone created in northern Syria following the Turkish military operation there.
In 2016, Ankara and Brussels signed an agreement exchanging EU financial aid in return for Turkey's tightening of control over its borders to prevent refugees from using it as a gateway to Europe.
Turkey is one of the main transit points for migrants and refugees seeking a way into Europe after fleeing war and persecution. The country itself hosts up to 3.6 million Syrian refugees.