ODP.NET固有の機能を使用したい場合
ODP.NETにはOracleの固有の機能を活用するためのさまざまな機能が実装されており、ADO.NETで提供されているクラスに加えて、あるクラスが追加されていたり、既存のクラスにメソッド、プロパティが追加されていたりします。
例えば、Oracle9iリリース2(9.2)以降のOracle Databaseでは、Oracle XML DBにより、データベースでXMLがそのままの形でサポートされています。Oracle XML DBは、SQLおよびXMLの両方のデータ・モデルが高度な相互運用性を持つように組み込まれた、XMLのネイティブ・サポートを提供されます。
この機能をODP.NETから利用したい場合は、ODP.NET独自に拡張されたOracleXmlTypeなどのクラスを利用します。このクラスを利用するには、Visual Studioのメニューより[プロジェクト]-[参照の追加]を選択し、[.NET]タブの[Oracle.DatAccess]を選択して、ODP.NETの参照設定を追加する必要があります。

次に、ODP.NETで提供されている名前空間をインポートします。
Imports Oracle.DataAccess.Client Imports Oracle.DataAccess.Types
using Oracle.DataAccess.Client; using Oracle.DataAccess.Types;
上記の設定により、ODP.NET固有のクラスが参照できるようになり、次のようにインテリセンスで表示されるのが確認できます。
上記のように、ODP.NETで提供されている固有の機能を利用したい場合はODP.NETを参照設定に追加し、データベースに依存しない汎用的なコードを記述したい場合は、DbFactoryクラスを利用したコードを記述します。DbFactoryクラスを利用する場合は、ODP.NETを参照設定に追加する必要はありません。
おわりに
ODP.NETを利用するための準備と、Oracleに接続する簡単なテストを行いました。今回はほんの触りの部分になりますが、今後ODP.NETを利用して、Oracleの機能を最大限活用するための記事を投稿していきますので、ご期待ください!

