Fundamentally, they are both storage services. ADLS is a PaaS Azure service, whereas OneLake is a SaaS service that is provisioned alongside Fabric. ADLS needs to be provisioned and managed but provides ultimate flexibility, OneLake just exists automatically because it is the core of Fabric, and it is therefore more opinionated with how it's structured and integrated into Fabric.