Wash and slice unpeeled potatoes into 1” pieces. No need to get fancy; boil the potatoes until they are soft enough that a fork won’t pick them up. Drain, reserving two cups of liquid.
While that’s happening, cut up the onion and the ham into what you consider bite-sized pieces. (Me, I go far large pieces, but you do you.)
Place the onion in a frying pan with oil and cook until the onion is translucent. (You can do butter instead of oil if you’re feeling you want extra-extra hardy soup. I will say there’s not an appreciable taste difference in this recipe.) Add the flour. Add the pepper flakes and black pepper to taste. I recommend erring on the side of “too much”, but you know how much you like hot stuff.
Now, in that big pot, put in the onion mix, the potatoes, the reserved liquid, and six cups of milk. Start heating and stir constantly.
While that’s going on, add the cheese and the ham. Keep stirring.
Cook that stuff for a half-hour. Stir stir stir.
Once done, you can place half in containers to be frozen for later, or you can invite everybody over. Maybe have them bring the bread!
The next time you cook it, adjust items to your liking. More/less pepper, a different cheese, lamb instead of ham. It’s soup; make it yours!