i386 vs i686 refers to the way the code was compiled.
Early fedoras used to be built for i386, and this will run (AFAIK) will run on the ancient 80386 and later. The earliest part, like 8086 have an inadequate MMU IIRC.
Recent Fedora are built for i686 which executes on Pentium Pro "P6" architecture, introduced 15 years ago at 200Mhz, and later. The main difference is that the instruction set. included extension like the MMX instructions. These instruction where meant for graphics/media but they are also very useful for data manipulation. See "grep mmx /proc/cpuinfo
So if you compile with "gcc -march=i686
", then the compiler generates instructions than cannot execute on the i586 and earlier architectures.
AFAIK this only impacts antique systems, and also some of the embedded Via/Citrix C7 family of processors, and some of the AMD Geode parts. Even for the C7 I think the problem is that those clowns never correctly implemented the MMX instruction set (has eternal errata). Anyway if you have a very low end embedded processor or a very ancient Pentium, then you need to find one of the distros that still has an i386 build.