Можно написать код для базы данных, используя не-ADO.NET интерфейс.Например, SQLite предоставляет C api, против которого можно программировать.Это очень необычно.ADO.NET предоставляет стандартный интерфейс, поэтому, если все провайдеры реализуют эти интерфейсы, разработчикам будет гораздо проще пользоваться.