what is difference between oracle instant client and oci?
Oracle Instant Client is a light-weight software which helps to run OCI, OBDBC, Pro*C, JDBC without installing full Oracle client.  In other hand the Oracle Call Interface (OCI) is an application programming interface (API) that allows applications written in C to interact with one or more Oracle Servers.
For details:
What is Oracle's instant client and how do I install it?
Introduction to Oracle Call Interface