For home Defense the 12gauge shotgun can not be beat. A short version like the Mossberg Shockwave 590A1 is a great option if you can handle the recoil without a stock. Loaded with low recoil 00 buckshot is adequate for defense against human threats unless they wear body armor. I load mine with 3" magnum 1 oz slugs generating over 3,200 flbs at the muzzle.
Body armor will stop it but not protect the wearer.