Fill a large pot 1/4-1/3 full of water and bring to boil.
Wash and trim broccoli into florets. If using the stem, peel and dice.
Place broccoli in a steamer basket and cook for 2-4 minutes, or until bright green.
Rinse broccoli in cold water or submerge in an ice bath to stop the cooking process, then dry on a clean towel.
Fry bacon until crispy and drain on paper towels, reserving fat for dressing.
Chop the bacon once it's cooled.
Broccoli salad dressing
In a bowl, whisk together the sugar, vinegar, cayenne, salt and pepper.
Once the bacon fat has cooled, add it and the mayo to the drressing ingredients and whisk until the dressing is smooth.
When ready to serve the salad, toss all the ingredients together and serve immediately.
If you like a sweeter onion, vidalia onion is a good substitute for the red onion.
To take some of the pungency out of the raw onions, dice the onions and soak them in a large bowl of cold water. This will pull the sulfury flavor out. Make sure to drain well before adding them to the salad.
Maybe it's just me, but I'm not fond of this salad as leftovers. The onion gets stronger in the refrigerator and the broccoli gets soft. If you'd like to prep this salad in advance, I recommend prepping all the ingredients and tossing them immediately before serving.