<p>An OleDB provider is a binary implementing COM interfaces provided by Microsoft. From that it seems to be possible to create a provider using C#. Is that correct? Is there a sample demonstrating that? If not, would you discourage me from doing that? I see that there are multiple unmanaged samples but I can't find any managed.</p>

I am not sure I really understand your question?! There already
is
a managed OleDBProvider?!
```
```
using System.Data.OleDb;
```
```
I would certainly discourage writing a provider that exists and works absolutely fine! :)
But in answer to your first question, you can of course create your own. The
Data Provider Roadmap
may be a good place to start for an overview and links  to samples etc.