Depends on the problem you want to solve. If you're only interested in stopping entrants, a massive wall works pretty well. I've visited, and it's formidably tall and quite solid.
If the problem is inequality between Mexican and US citizens, and the fact that jobs and workers flow to where they are valued most, open immigration is a far more effective and humane policy.
Today, we have neither. Patchwork walls and uneven enforcement here in Arizona merely force migrants to travel across dangerous terrain, like the Sonoran desert or the Mule mountains. Poor policy takes a terrible human toll - at least 230 migrants this year. It creates an informal market for professional smugglers, often associated with organized crime. Worst, it hasn't kept economic principles from working. With huge demand for cheap labor, and scores of workers seeking to improve their lives, immigration is going strong.
Open borders are reasonable and humane. The poor deserve a chance to improve their lot.