Take the Brussels sprouts and remove the brown stems and yellow leaves from them using a kitchen knife. Rinse them thoroughly, let them dry and cut each of them into two halves.
Dice the bacon and place it in a skillet and cook over moderate heat for about 10 minutes. Prefer to use a large and deep skillet for the process. Cook the bacon until it gets golden brown and try not to overcook it.
Take out the bacon and leave the grease within the skillet for further use.
Pour off the bacon grease from the top until you are left with just two table spoons of it in the skillet.
Add olive oil, butter, onion and garlic into it and stir thoroughly. You should dice the onion and mince out garlic before adding it to the bacon grease. Further add salt and black pepper according to your requirement.
Now cook the mixture for 5 to 7 minutes, until the onion softens up and garlic turns golden brown.
Keep stirring the mixture and add balsamic vinegar to it before simmering it.
When you see the mixture has reduced by 1/3, add the reserved bacon, the Brussels sprouts and chicken stock to the skillet. Stir for a while and then let the mixture boil over high heat.
After the mixture have boiled, reduce the heat to medium level and let them simmer. You have to cook until the Brussels sprouts become tender but still relatively firm. This won’t take more than 10 minutes.