Difference between Field and Field Instance?
A field is the basic definition of a field itself.
A field instance is an instance of that field, attached to an entity/bundle.


Fields are created with field_create_field
Field instances, with field_create_instance


To check if the field, or instance exists, use


field_info_field or
field_info_instance


When you create a field through the UI, Drupal always creates a field instance on that entity/bundle.

If you're adding an existing field, the field data is cloned and a field instance is created on the new entity/bundle.

Lastly, field settings apply globally to that field, field instance settings can vary between entity bundles.