Preheat the oven to 400°F (200°C). Toss the butternut squash cubes with olive oil, spread on a baking sheet, and roast for about 25-30 minutes until caramelized and tender. Set aside.
While the squash roasts, warm the vegetable broth in a saucepan over low heat. Keep it simmering gently throughout the cooking process.
In a large skillet or wide saucepan, heat a tablespoon of olive oil over medium heat. Add the chopped onion and sauté until translucent and fragrant, about 3-4 minutes, until it begins to soften.
Add the minced garlic to the skillet and cook for another minute until it fills the kitchen with a savory aroma.
Stir in the arborio rice, cooking for 2 minutes while stirring constantly until the edges look slightly translucent, giving it a lightly toasted appearance.
Begin adding the warm broth, one ladleful at a time, stirring frequently and allowing the rice to absorb the liquid before adding more. Continue this process for about 18-20 minutes, until the rice is creamy and al dente.
Gently fold in the roasted butternut squash chunks, and cook for an additional 2-3 minutes to blend the flavors.
Stir in the chopped spinach and cook until wilted, about 1-2 minutes, creating a bright contrast to the creamy rice and roasted bits.
Remove the skillet from heat, then stir in grated parmesan cheese, a tablespoon of butter (if using), and season with salt and pepper to taste. Mix until smooth and well combined.
Let the risotto rest for a minute, then serve hot, garnished with extra parmesan or fresh herbs if desired. Enjoy the creamy, colorful dish with its tender squash and vibrant greens.