Borrowed from
http://www.fedoraforum.org/forum/sho...d.php?t=198771
"Compiled for different CPU architectures. i386 should run fine on anything above a 386 processor. i686 is for newer Pentium processors (by new I mean PII and above), but can also be run on newer Intel Core 2 Duos, Athlons, etc.
http://www.governmentsecurity.org/archive/t7601.html
Theoretically, and by the metrics, i686 should be faster than i386 on a 686-compatible computer, assuming the entire system is compild for i686. But whether it would be enough of a difference to be noticeable to the end user? Well, probably not.
EDIT:
Just so you know, Fedora is (mostly) compiled to be compatible with i386 even though these days almost all people running Fedora on x86 are on i686 machines. The installer put an i686 kernel on my machine, though. From what I understand the installer is supposed to guess what kernel to install based on detected hardware (IIRC - I remember a bug back awhile where machines with i686-compatible processors were being given the i586 kernel).
If you're looking at RPM suffixes, as long as you have a Pentium II or later, packages with i686 in the name should be okay, but picking i386 packages to be on the safe side can't hurt."