The 16F is 14 bit, and the 18F is 16 bit, this allows the 18F series to have a larger instruction set - the 18F has an instruction set that's optimised for use with C, and MicroChip even provide a free C compiler for it. Essentially it's a higher end version of the 16F, and runs faster as well, with an internal PLL that can run four times faster than the external crystal.
It gives you a number of extra instructions which simplify some tasks.
Bearing in mind the original post is five years old, there's also now the enhanced 16F series (16F1827 etc.), which provide a smaller number of extra instructions than the 18F, but offer great enhancements over the standard 16F, and (best yet) they are a fraction of the cost of either.
The big change for me is the larger program memory... With 16 bit architecture comes 64k memory ( some have 96k, even 128k ) Albeit two byte instructions... It's better for larger applications..