The table below compares the PIC and related microcontrollers that I think are interesting for hobbyists and low-volume professionals.

chip package I/O code data eeprom peripherals MIPS $ tools remarks
12c508 sdip 8 6 0.5k 25 - osc 1 1.40 Jal not flash
12c509 sdip 8 6 1k 41 - osc 1 1.50 Jal not flash
16c84 sdip 18 13 1k 38 64 - 2.5 - Jal, Wisp obsolete
16f84 sdip 18 13 1k 68 64 - 2.5 - Jal, Wisp obsolete
16f84a sdip 18 13 1k 68 64 - 5 4.70 Jal, Wisp  
16f627 sdip 18 16 1k 224 128 d/a, uart, osc 5 ? Jal, Wisp  
16f628 sdip 18 16 2k 224 128 d/a, uart, osc 5 3.25 Jal, Wisp 2nd choice
16f870 sdip 28 22 2k 128 64 a/d, uart 5 3.95 Jal, Wisp, WLoader  
16f871 wdip 40 33 2k 128 64 a/d, uart 5 4.95 Jal, Wisp, WLoader  
16f872 sdip 28 22 2k 128 64 a/d, mssp 5 3.50 Jal, Wisp, WLoader  
16f873 sdip 28 22 4k 192 128 a/d, uart 5 7.00 Wisp, WLoader  
16f874 wdip 40 33 4k 192 128 a/d, uart 5 7.50 Wisp, WLoader  
16f876 sdip 28 22 8k 368 256 a/d, mssp 5 8.50 Jal, Wisp, WLoader  
16f877 wdip 40 33 8k 368 256 a/d, mssp 5 8.50 Jal, Wisp, WLoader 1st choice
SX18 sdip 20 12 2k 136 - osc 50 4 Jal  
SX28 sdip 28 20 2k 136 - osc 50 4.40 Jal  

The prices are for single chips, commercial grade, DIP package, and are of course just indications. High-volume buyers should be able to get much better prices.

The best choice for making a start is definitely the 16f877, followed by the (cheaper but less capable) 16f628. The 16f84a is only interesting to replace the 16f84 or 16c84 in old designs, and the SX28 is the choice when a lot of MIPS is needed. The 12c508 and 12c509 are interesting for larger series, but these chips are eeprom (not flash), so development is more difficult and requires (expensive) windowed chips and an eeprom eraser. The 16f873 and 16f874 are interesting only as replacement for older (OTP) chips. The other 16f87x chips can be used as cheaper and/or smaller replacements for the 16f877 when you don not need its full power.