OLEDB x ADO x ODBC, para o programador qual a diferença?

O título do tópico já diz tudo né?

Vou fazer outra pergunta. Qual a diferença entre o ADO.NET e o provedor nativo?