Cook the bacon in a skillet over medium-high heat until it's crispy, about 8-10 minutes, then transfer to a paper towel-lined plate to cool and drain. Once cooled, chop it into bite-sized pieces. While the bacon cooks, finely dice the red onion and set aside. I like to use thick-cut bacon for this salad because it holds its crunch better when mixed with the creamy dressing.
Place the sliced almonds in a dry skillet over medium heat and toast them for 3-4 minutes, stirring frequently, until fragrant and lightly golden. Transfer to a plate to cool. While the almonds toast, cut the broccoli into small, bite-sized florets—you want them uniform in size so they're easy to eat and distribute evenly throughout the salad. This prep work can happen while the bacon cooks.
In a large mixing bowl, whisk together the mayonnaise, apple cider vinegar, sugar, pepper, and garlic powder until smooth and well combined. Taste the dressing and adjust the seasoning as needed—the vinegar and sugar should be balanced so neither overpowers the other. I find that letting the dressing sit for a minute after whisking helps the flavors meld better.
Add the broccoli florets, cranberries, grated cheddar cheese, toasted almonds from Step 2, chopped bacon from Step 1, and diced red onion from Step 1 to the dressing in the large bowl. Using a large spoon or spatula, gently toss everything together until all the broccoli and vegetables are evenly coated with the creamy dressing. Be careful not to crush the broccoli while mixing.
Transfer the assembled salad to a serving bowl and refrigerate for at least 1 hour before serving. This chilling time allows the flavors to meld together and keeps the salad nice and cold. You can make this salad up to 4 hours ahead of time, though I find the bacon stays crispest if you add it no more than 2 hours before serving.