A questão pergunta qual é melhor, mas na verdade eles servem a propósitos diferentes e são usados juntos ao mesmo tempo em um aplicativo.
ASP.NET não é uma linguagem de programação, mas uma estrutura de aplicação web. É um conjunto de componentes e serviços web pré-projetados fornecidos pela Microsoft. Ele permite que os desenvolvedores criem rapidamente aplicativos da web interativos, dinâmicos e independentes de plataforma.
ADO.NET faz parte do .NET Framework usado para interagir com fontes de dados. É um conjunto de classes, interfaces e ferramentas que permitem aos desenvolvedores acessar e manipular dados de diversas fontes, como bancos de dados, documentos XML e serviços web.
Por exemplo, em um aplicativo Web ASP.NET, o ADO.NET é usado para conectar-se a um banco de dados, recuperar dados dele e, em seguida, usar esses dados para preencher a interface do usuário exibida no navegador da Web.