The problem with this whole debate is that our reactions tend to be visceral rather than logical, with the problem exacerbated by some public figures whipping up xenophobia every chance they get. Yes, our border should be absolutely secure against illegal entry, and no one should be here who is not legally entitled to be here. But...
People who present themselves at our border and ask for asylum are following our law, and under the law, we allow them to enter our country pending resolution of their claims. When we do that, we have to shelter and support them, educate their children, provide medical care, etc., while we adjudicate their cases. The alternative is...what? Let them live on the streets or starve? Deny them basic needs? Is that really what we want America to be? Is that the image of the USA we want to present to the world?
When my great-grandparents came here from Europe, they were the foreigners who didn't speak English, didn't look like "real Americans", ate strange food and dressed funny. They settled in an "ethnic" neighborhood in Baltimore with other immigrants from their homeland. Within one generation, our family completely assimilated: My father was a proud American who didn't speak a word of his grandfather's native language. That's the story of America.
People don't come to the USA -- especially by walking hundreds of miles -- because things are great in their home countries, and they just want a change of scenery. They come here to make better lives for themselves, and the vast majority of them want nothing more than to assimilate, to be successful, and to become a part of our great American mosaic. In my opinion, the money we spend to help them as they begin their new lives here is an investment in the future.