In a large pot, melt your butter on medium heat and add your diced onion. Add a couple pinches of salt and saute until the onions are tender and beginning to brown – about 8 to 10 minutes.

Stir in your garlic and add plenty of black pepper. Let this cook for about a minute and stir in the broccoli. Let this cook for another minute.

Add your broth and allow to come to a slow boil. Simmer for about 5 to 10 minutes or until the broccoli starts to tender.
Mix in your flour into the milk, making sure no clumps remain. Slowly stir this into the soup. Reduce heat continuously stir until the soup thickens – around 3 to 5 minutes.

Reduce your heat again to low and stir in the cheese by the handful until all your cheese has melted. Add salt and pepper as necessary and you’re done.