MAKE VEGGIE STOCK FIRST (if you are using the homemade version). Simply place all the ingredients in a saucepan, cover with a lid and bring to a boil. Boil for 30 minutes. Strain and discard all the solids. The stock is now ready for use.
Trim the broccoli into tiny florets of 1/4 inch and rinse to remove any dust and dirt. Chop the stalk parts quite small also but keep separate from the florets.
In a large saucepan, melt butter. Add the onions, leeks and broccoli stalks (you'll be adding the florets later). Stir well then cover the pan and leave the veggies to sweat for 10 minutes.
Stir in the oats then add the milk, a little at a time, stirring well after each addition.
When all the milk is in, add the veggie stock. Stir well and season as necessary. Simmer gently for a further 10 minutes. Turn off the heat and allow the soup to cool for about 10 minutes.
In the meantime, steam the broccoli florets for exactly 4 minutes.
Pour the soup and the cream cheese into a food processor and blend until smooth.
Return the soup to the pan (which you have rinsed out), add the broccoli and reheat gently.