Heat a skillet over medium heat. Add 1 tablespoon of butter to melt. Add the onions and cook for about 5 minutes, stirring occasionally, until the onions are soft and beginning to brown. Turn off heat and set to the side.
While the onion cooks, melt the remaining 3 tablespoons of butter in a medium stock pot or dutch oven on medium-low heat. When the butter is melted, add the flour and stir.
Add 1 tablespoon milk at a time to the flour mixture. Whisk or stir until the flour is mostly incorporated into the milk.
Add the 2 cups of milk and the broth into the flour. Stir occasionally to prevent sticking and simmer on medium-low for 20 minutes. The mixture should be smooth and getting thicker.
After 20 minutes, add the raw vegetables and the onions and continue to simmer for another 20 minutes, or until the vegetables are tender. Stir occasionally.
When the vegetables are tender, add the cheese and stir until it melts completely. Add salt and pepper to taste.
Serve immediately with crusty bread and enjoy.