The version and execution version are not always the same, which spoiled me before.
For the link, select the link for Oracle.DataAccess in Solution Explorer on the machine where the project is running. Now view the properties window and check the path.
Finally, go to the machine where it does not work, and make sure that the same DLL lives in the same path.
You can also get around this by including "copy local" in the properties for the dll, but I don't think this is considered "best practice."
source share