Step 1
Place a rack in middle of oven; preheat to 350°. Spread out ¾ cup raw walnut halves or blanched hazelnuts on a rimmed baking sheet and toast, stirring occasionally, until golden brown, 7–9 minutes. Let nuts cool, then crush into coarse pieces.
Step 2
Place a fine-mesh sieve over a medium bowl. Cook 2 large shallots, thinly sliced into rings, and ⅓ cup extra-virgin olive oil in a medium skillet over medium-high heat, stirring often, until shallots are wilted and most are golden brown and crisp, 8–10 minutes. Pour into sieve. Transfer fried shallots to paper towels to drain and immediately season with kosher salt.
Step 3
Add 1 garlic clove, finely grated, ⅓ cup white wine vinegar, 3 Tbsp. Dijon mustard, 2 Tbsp. honey, 1 tsp. Aleppo-style pepper or other mild chile flakes, and ½ tsp. Diamond Crystal or ¼ tsp. Morton kosher salt to shallot oil and whisk to combine. Taste dressing and season with more salt if needed.
Step 4
Toss 1 lb. red cabbage (about ½ medium head), cored, thinly sliced, 2 small fennel bulbs, cored, or 1 head of celery, or a mix of both (1–1½ lb. total), thinly sliced, and half of dressing in a large bowl to coat. Add 5 oz. Medjool dates (6–8), pitted, thinly sliced lengthwise, 3 oz. sharp white cheddar, cut into small cubes, and all but ½ cup fried shallots and toss just to disperse evenly. Drizzle with more dressing and/or olive oil if desired; season with salt if needed.
Step 5
Pile salad high in a large shallow bowl or on a platter and top with walnuts and ½ cup fried shallots. Serve with remaining dressing on the side.
Do Ahead: Shallots can be fried 1 week ahead; store airtight at room temperature. Transfer shallot oil to an airtight container; chill up to 1 month. Dressing can be made 3 days ahead; transfer to an airtight container and chill. Vegetables can be sliced 1 week ahead; transfer to an airtight container and chill. Salad (without nuts) can be made 2 days ahead; transfer to an airtight container and chill.

