Yo no soy el indicado para responderte, pero no creo que uno elija un lenguaje u otro por su forma de programar (que son similares para algunas cosas y muy diferentes para otras como la programación de bases de datos) sino (por lo menos en Argentina) por el costo que el cliente debe pagar por dicho cambio. Es decir no necesitas una gran máquina para hacer correr programas robustos con VB6, mientras que con VB.Net necesitas como mínimo un Pentium III 450 con 128 Mb de RAM y Windows Me con el frameworking instalado (unos 120 Mb como mínimo ocupa en el disco). Con respecto a lo de la programación Web no es mentira, pero todo tiene que ver con lo anteriormente expuesto, ya que las aplicaciones Web se instalan en servidores poderosos (o por lo menos son más que un Pentium III 450

).
Para lo segundo, no creo que nadie tenga una respuesta exacta y precisa, pero todo el mundo recomienda usar ADO porque es la tecnología más moderna y se orienta a sistemas de cliente/servidor. Por eso se recomienda usar ADO ya que seria más fácil migrar a una aplicación cliente/servidor si uno trabaja con una aplicación remota, que si uno tiene todo el código realizado en DAO. Aunque he visto mucho programas que utilizan ambas tecnologías, ADO para el código cliente/servidor y DAO para la parte de seguridad y replicación de bases de datos, también para la creación de bases de datos (aunque se puede utilizar sentencias SQL para esto).