3 answers
The key is timing and temperature control. Dress your salad right before serving, not hours ahead. warm roasted veggies will keep releasing moisture as they cool, so if you toss everything together too early, the greens get soggy and textures fall apart. Also keep your dressing lighter than you'd use on a cold salad - roasted veggies already have great flavor, so you don't need as much, which means less liquid sitting on the leaves.
Use heartier greens that can actually stand up to warmth. Spinach and delicate lettuces will wilt immediately, but kale, arugula, or even radicchio hold their texture way better. You can toss the greens with a tiny bit of dressing and let them sit separate from the hot veggies, then combine everything just before plating.
The temperature of the salad matters too. If your roasted veggies are still steaming hot, they'll wilt anything nearby. Let them cool to warm or room temp first - they'll still taste great but won't keep cooking the greens. And if you're adding something crunchy like nuts, croutons, or seeds, don't mix those in until the last second. Toast them fresh or keep them separate so they stay crispy instead of absorbing all that moisture.
Don't mix warm roasted veg with cold dressing or wet greens way ahead of time - that's basically asking for a soggy mess. What actually works is keeping your components separate until the last minute: roasted veg in one bowl (still warm is fine), your greens and other stuff in another, and dress it all together right when you're about to eat. I learned this the hard way when I made a warm beet and arugula salad for guests and assembled it like 20 minutes early - the beets leaked their color into everything and turned the greens into limp mush. Now I roast the vegetables, let them cool just enough to handle but still warm, then toss everything together with a vinaigrette only when people are ready to sit down, and it stays actually crisp instead of collapsing.
Roasted veg keeps releasing moisture as it cools, so if you're serving warm, dress it just before plating instead of making it ahead. The warm temperature actually helps - it's the sitting around that kills it.
Your answer
Log into answer.