Preheat oven to 400F and lightly grease a large baking sheet. Rub inside of spaghetti squash halves with olive oil and season with salt and pepper. Place squash cut-side down on prepared baking sheet.
Roast squash at 400F 40-45 minutes until squash is very tender when pierced with a paring knife. Allow squash to cool several minutes. When cool enough to handle, use a fork to scoop out flesh and place in a large bowl. Set aside.
In a Dutch oven or large soup pot, melt butter over medium-high heat. Add onion and carrot and saute several minutes until onion is translucent. Add garlic and flour and cook 1-2 minutes until fragrant.
Slowly add chicken broth, stirring to remove any browned bits from bottom of pan. Add spaghetti squash to soup, stirring until combined. Bring soup to a simmer over medium-high heat.
Remove two cups of soup mixture and transfer to a blender. Blend on high speed until completely smooth. Add pureed mixture back to soup.
Reduce heat to medium and add broccoli to soup. Cook 5-8 minutes until broccoli is tender when pierced with a fork. Stir in cream and cheese until melted, then remove soup from heat.
Season soup with salt and pepper to taste if needed and serve warm. Enjoy!