Fry the bacon, then crumble into small bits and set aside.
Add all the remaining ingredients into a large bowl, except the broccoli, bacon, red onion and pine nuts, and whisk to combine.
Add in the broccoli, bacon, pine nuts and red onion over the dressing and toss to coat.
Allow to sit for 20-30 minutes so the flavors can develop and the broccoli can absorb the dressing. The longer it sits, the better it is!
If you don't like the broccoli raw, you can steam it for 2 minutes and dry well before mixing in the dressing. You can also substitute the pine nuts with sunflower seeds, chopped walnuts or slivered almonds.