Actual immigrant visas are the way to do it. Marrying a US citizen also assures immigrants are required to not get on welfare for ten years and that someone is there who can help socialize the newcomer, along with the responsibility of that person for those ten years.
H1-Bs don't get that. They bring in their families and spouses and their former country's set of expectations and don't assimilate well, because they don't have to. Chain migration is a big thing with H1-Bs all around me, but I've been to a wonderful wedding anniversary and birthday parties, as well. This is transplanting a country.
This is also true of people “rescued” from places like Somalia, and they, too, don't assimilate, but bring their culture. We see what that is doing, right now.
We need to cut off these paths. Every country in the world exists for only its own citizens. No country exists for another country's citizens—period. If we collapse that, we deserve all the illegals and unlimited “legals,” we get, and will disappear as a country (and are).
One of the reasons I chose to study for higher degree in United States rather than Germany was I watched so many Hollywood movies I was very curious about United States. And sure enough I felt more at home in Iowa city than in my home town in India. Smart move on my part to choose Iowa instead of 4 other universities where I was also accepted. Iowa people were very nice and friendly. What is nice about USA is that everyone speaks same language, English. In India each state has a different language. Only way to communicate is either English or Hindi. This is my 66th year in US, and I visited India only twice because I don’t feel at home there anymore.