BGP does indeed interoperate with IGPs, but of course we can’t cut out IGPs. Take a look at this post that compares BGP to OSPF.
The comparison could well have been between BGP and any IGP. The above link describes the role of BGP as compared to that of IGPs. Each one does indeed have a specific role that is ideal for its purpose. BGP and IGPs do indeed complete each other .