There is a brief intro to the topic at the FAQ:
Basically, there are two different fields that you as a (premium) user can add to a given cache listing:
- Corrected Coordinates
- Personal cache note
The main difference is that Corrected coordinate is semantically a new coordinate for the cache in question. The cache note, however, can be any text.
The main difference (as Jakuje points out) is that there is a an API call that Project-GC can make that fetches a list of all the caches that a given user has cache notes added to. A similar API call for corrected coordinates does (still) not exist.
Think of API calls as forms of questions you are allowed to ask. For instance, you are allowed to ask "Which caches does user X have notes on?". On coordinates, you are only allowed to ask "Does user X have corrected coordinates for cache Y?". Since you don't know in advance X and Y, it it practically impossible to fetch the answer ahead of time. Only when you provide a list of caches (f.x. in VGPS) Project-GC can iterate over them and ask the question for each one. This takes a lot of time and can not be done with any reasonable complexity in advance. Personal cache notes on the other hand can be easily fetched using the list utility and thus done efficiently.