Warm chicken broth in a separate saucepan and keep at a gentle simmer throughout — cold broth shocks the rice and makes risotto gummy.
Slice mushrooms thickly. Sauté in butter over medium-high heat without stirring for 3 minutes to brown. Set aside.
In a large, heavy saucepan, melt butter over medium heat. Add diced onion and cook 5 minutes until soft.
Add arborio rice (or any short-grain rice). Stir 2 minutes until the edges go translucent.
Add a ladleful of warm broth. Stir frequently but not constantly until absorbed. Repeat — add a ladleful, stir until absorbed, repeat. This process takes 20–22 minutes. You're building creaminess through starch release.
When rice is tender with a slight bite (al dente) and the mixture looks creamy, remove from heat.
Stir in butter and grated parmesan. Season with salt. Fold in mushrooms. Cover and rest 2 minutes.