Chorus is a new protocol that improves the efficiency and scalability of wireless broadcast using self-interference cancellation. It allows packet collisions at the MAC/PHY layer by effectively detecting and decoding overlapping packets carrying the same data. Chorus resolves collisions using symbol-level interference cancellation and combines the resolved symbols to restore packets. It also uses a cognitive sensing and scheduling MAC scheme. Evaluation shows Chorus has superior performance over CSMA/CA in scalability, reliability, delay and other metrics under different network scenarios.