Peel and cube the potatoes. You want these on the small cube side, like 1 inch or so. Chop the broccoli and onion. Mince the garlic.
In a medium to large pot, heat the olive oil over medium heat. Add the onion and garlic and cook 1 minute. Then add the potatoes and broccoli and cook another minute.
Pour in the stock, cover and cook on low for 15 minutes or until the potatoes are soft enough you can easily mash them with a spoon.
In a blender or an immersion blender, puree the soup. See note.
Stir in the milk or cream as well as the cheese. Taste and season with salt and pepper to your liking.
Serve topped with a little more cheese, and I think saltine crackers are a must but that's just me.
Sometimes I like to remove some of the cooked broccoli before pureeing the soup. Then I add the broccoli back in, just to retain some texture in the soup. This is just a preference, either way you go this soup is still delicious.