Benzoyl peroxide breaks down on the skin and releases oxygen into the pore. The bacteria involved in acne cannot survive in that environment. It also loosens the clog slightly and reduces the oil in the follicle.
Antibiotics work by blocking one specific process inside a bacterium, so a single mutation can defeat them. Benzoyl peroxide damages many parts of the bacterium at once by simple chemistry, the way bleach does. There is no single thing for bacteria to adapt to, which is why resistance has not developed to it.
Nearly all of these are irritation, and nearly all settle if you use it less often at first.
Most people who say benzoyl peroxide did not work either stopped at week three or used it on top of already-irritated skin.