Preheat your waffle iron to medium-high. If you plan to keep waffles warm, set your oven to 200°F and place a wire rack on a baking sheet inside. That rack keeps them crisp.
In a large bowl, whisk the flour, cornstarch, sugar, baking powder, baking soda, and salt.
In a second bowl, whisk the egg yolks, buttermilk, oil, melted butter, and vanilla until smooth.
Pour the wet mixture into the dry. Whisk just until you don’t see dry streaks. A few small lumps are fine. Let the batter rest 5 to 10 minutes. It thickens slightly and relaxes the gluten, which helps with that light, crisp texture.
Meanwhile, in a clean bowl, beat the egg whites to soft peaks. They should look glossy, stand up, then slump over a bit.
Fold the whites gently into the batter in 2 additions. Use a spatula and light strokes. Don’t overmix. You want some airy streaks left.
Lightly oil the waffle plates. Add batter according to your iron’s capacity. For a standard iron, that’s usually about 1/2 to 2/3 cup per waffle; for Belgian, closer to 3/4 to 1 cup. Close the lid and cook until deeply golden and crisp, 3 to 5 minutes, depending on your machine.
Transfer finished waffles to the warm oven, directly on the rack. Don’t stack them. Steam is the enemy of crisp.
Repeat with remaining batter. Give it a gentle stir between batches if it separates a bit. Then serve with whatever you like: fruit, butter, maple syrup, a swipe of jam, or just a dusting of sugar. I often make a double batch on Sunday so weekday me can grab one from the freezer. Future me says thanks.