Préchauffer le four à 210 °C (410 °F).
Lavez et coupez la courge en deux verticalement. Retirez les graines à l'aide d'une cuillère.
Placez les deux moitiés sur une plaque allant au four recouverte de papier sulfurisé ou d'un tapis de cuisson en silicone. Badigeonnez chaque moitié avec 1 cuillère à soupe d'huile d'olive et assaisonnez avec du sel et du poivre. Faites-les rôtir pendant 30 à 40 minutes ou jusqu'à ce que les deux moitiés soient complètement cuites et qu'une fourchette s'insère facilement dans la chair.
Dans une grande casserole, faites revenir les oignons et le céleri dans du beurre et 1 cuillère à soupe d'huile d'olive à feu moyen-vif pendant 3 à 5 minutes.
Retirez le pot du feu et ajoutez le reste des ingrédients.
Récupérez la chair de la courge à l'aide d'une grande cuillère. Si vous voulez garder la peau, retirez la tige et la base de la courge, et coupez la courge en morceaux de tailles moyennes avant de les ajouter dans la casserole.
Portez le tout à ébullition, puis réduire à feu doux-moyen et couvrir la casserole. Laissez cuire environ 10 minutes.
Retirez la casserole du feu et mélangez la soupe à l'aide du mélangeur à main jusqu'obtenir une soupe lisse et veloutée.
Goûtez la soupe pour rectifier l'assaisonnement au besoin.