In a soup pot, sauté onion in oil. Remove onion from pan and set aside.
Using the same pan, melt the butter than slowly add in the flour using a whisk over medium heat for 3 minutes, stirring constantly. Slowly pour in the the half & half and whisk to make sure there aren't any clumps of flour.
Add the vegetable stock. Simmer for 10 minutes.
Add the broccoli, carrots and sautéed onions. Cook over low heat 20 minutes or until broccoli is cooked but not mushy.
Add nutmeg, salt, and pepper, adjusting to taste. Remove 2 cups of the soup and blend using an immersion blender or let cool and blend in a standard blender. Transfer this blended portion back into the soup. Return to heat and add in shredded cheese.
Serve hot with crusty bread like ciabatta.