You can use GetPartBoundsInRadius, which will return a table of parts in the radius. All you need to do is give it a CFrame (the bombs CFrame) and a magnitude (a number you want as the bombs range).
For buildings with physics, I’d use welds and whenever you use GetPartBoundsInRadius you can delete any welds inside the parts it returns.
That sound more optimized, and after finding all the parts in the explotion, i could destroy his parented weld or use :GetConnectedParts() to find the weld if is not a child