Preheat the oven to 180°C/350°F.
Peel and thinly slice the onions. Heat up a non-stick pan to medium-heat, add a drizzle of olive oil and add in the onions. After about a minute, reduce to low-heat. Continue to stir on low-heat while you prepare the other ingredients. They will simmer for 40 minutes in total.
Bring a pot of water to boil on the stovetop. Chop the brussels sprouts' ends off and peel off any dirty outer layers. Add these to the boiling water and blanch for just one minute. Drain and slice the sprouts in half.
Add the sliced sprouts to a lined baking tray with a big drizzle of olive oil. Make sure they are spread out evenly (it doesn't matter if they are face-up or face-down). Roast for 20 minutes.
When the onions are about half way through cooking (~20 minutes in) start adding in the red wine vinegar, a splash at a time. Continue to stir and flip the onions as they caramelise. After 40 minutes they should be perfectly caramelised. Then, turn off the heat.
Roughly chop the chestnuts, fresh parsley, and dried cranberries (or they can be kept whole).
Plate the brussels sprouts and add the caramelised onions on top. Then, add the chestnuts, dried cranberries, and parsley. Add salt and pepper. Enjoy!