The answer is
31 times
Because
you can either cut rows of 8 (3 cuts, you now have 4 rows of 8), then separate each row with 7 cuts each. $3 + (4*7) = 31$.
or cut vertically first seven times to create 8 columns of 4, then cut each 3 times. $7 + (8*3) = 31$.
changing between cutting horizontally and vertically each time will not help getting a lower amount of cuts. it always results in 31.
Unless..
we are allowed to cut 4 rows, put them together as if the bar were still whole, and cut 7 times vertically. In that case we get 11 cuts. I don't think this is allowed in this puzzle
After Q-Edit:
In this puzzle, we don't have to separate the pieces and cut each piece on its own. As others now have said, it is possible with 5 cuts.
What if putting chocolates onto each other was not allowed?
- You don't even have to stack the halves on top of each other, just arrange them next to each other so you can cut each piece the same way with one cut.