Search notes:

ODP.NET

ODP.NET is part of Oracle Data Access Components (ODAC). ODAC can be downloaded from OTN.
An ODP.NET driver has two components:

Locating OCI DLLs

ODP.NET tries to locate the native OCI DLLs with the value under the registry key HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ODP.NET\version (version being something like 2.122.18.1 or 4.122.18.1).
This value is supposed to store a path, typically %ORACLE_HOME%\bin.

Driver Types

ODP.NET comes with three types of drivers:
ODP.NET, Managed Driver consists of fewer DLLs than ODP.NET, Unmanaged Driver. Hence, the installation size of the Managed Driver is smaller than that of the Unmanaged Driver.
ODP.NET Core is similar to the ODP.NET, Managed Driver yet with reduced set of provided APIs. Both use the same namespaces.
ODP.NET, Managed Driver and ODP.NET Core are built with AnyCPU, thus they run on either 32-bit or 64-bit (x64) .NET Framework and on either 32-bit or 64-bit Windows.
ODP.NET Core also runs on Oracle Linux 7 and Red Hat Enterprise Linux 7.
As of 18c, ODP.NET Core follows the .NET Standard 2.0 specification.
ODP.NET Core is compatible wtih ASP.NET Core 2.x and ASP.NET.
See also Differences between the ODP.NET Drivers.

Files

The directory structure under ODP.NET is roughly:
Directory structure       | Comment 
--------------------------+------------------------
                          |
─bin                      | Unmanaged drivers with TWO sets of binaries:   
 ├───2.x                  |     1) One set for .NET Framework 2.0 (importantly Oracle.DataAccess.dll)
 └───4                    |     2) One set for .NET Framework 4   (also contains an Oracle.DataAccess.dll).
     └───EF6              |          
─doc                      | Contains readme.htm with helpful comments on bugs and limitations
─managed                  | Managed drivers. Only ONE set of binaries for frameworks
 ├───common               |    Contains Oracle.ManagedDataAccess.dll
 │   └───EF6              |          
 ├───PublisherPolicy      |                  
 │   └───4                |        
 ├───x64                  | Platform dependent versions of Oracle.ManagedDataAccessDTC.dll and Oracle.ManagedDataAccessIOP.dll.
 └───x86                  |      
─PublisherPolicy          |              
 ├───2.x                  |      
 └───4                    |    

Misc

ODP.NET and Microsoft .NET Framework Data Provider for Oracle are not the same thing. The former is developed by Oracle, the latter by Microsft.
ODP.NET requires an installed Oracle Client to be installed when used to establish connections to an Oracle server.

See also

The .NET namespace Oracle.DataAccess.Client
The set of ODP.NET classes is contained in the following assemblies: Oracle.ManagedDataAccess.dll, Oracle.DataAccess.dll
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ODP.NET

Links

Oracle's .NET code samples on github.
MOS Document 7262401.1.

Index