Full UTF-8 adds complete support for all the UTF-8 chars: 1 through 4 bytes long. Without this plugin, WordPress only supports up to 3 bytes.
WordPress does not support full UTF-8 characters because MySQL 5 doesn't either.
This means that if you add unsupported UTF-8 characters to the content of a post, the following happens. Suppose you copy some text from a web pge and paste it into the WordPress editor, it works like a charm. Then you reformat it and save. All seems fine, but as soon as the page is reloaded you see that your post has been truncated at a random point. Well, it's not random of course but you won't easily understand why it happened there. The reason is that right there appeared the first unsupported UTF-8 character. And all content starting from that one up to the end of the post is unrecoverably gone, lost forever.
For making WordPress (and MySQL 5) support the full range of UTF-8 characters, this plugin escapes any character with a unicode code point between 0x10000 and 0x10FFFF (1,048,576 supplementary characters in theory).
Full UTF-8 version 1 supported all UTF-8 characters in selected places (like title and content). Some special places (like custom fields) were not supported.
Full UTF-8 version 2 supports 100% of WordPress data written to the database and read back.