I need to buy a few logic ICs. Which family should I get? HC? HCT? Which kind is best to have lying around in a parts box, for maximum compatibility with unpredictable future projects? Wide supply range, no extreme frequency requirements, etc. Schmitt inputs? Open outputs?
HC is the most useful. It has a very wide supply voltage range, is easy to interface to most MCUs, has good noise immunity, has plenty of speed, and is widely available. HC is also available as single gates in tiny packages. Forget TTL and LS TTL, no one uses them for new designs these days.
It's also worth learning to use CPLDs, Using them often makes a lot more sense than designing with individual logic chips.
With its wide operating voltage and general availability, I'd agree that HC is the most useful family to keep around. If you're working with designs that require very high speed or extremely low power, you're not really in the realm of general purpose anymore.
It is pretty common to run into mixed power supply situations, though, like needing to go from 5V to 3V or vice versa. HC has CMOS inputs and input protection diodes, so it's not a very useful family for logic level translation. You can make 5 to 3 work with input resistors to limit the diode current, but it's not ideal. For 3 to 5, you might just be out of luck.
For 5V to 3V (5V inputs driving a chip powered by 3V), AHC and LVC have 5V tolerant inputs and work well.
For 3V to 5V, you need a family with TTL-compatible inputs, so that the lower 3V signals will satisfy the high input voltage requirement of the 5V powered chips. For that, families like HCT and AHCT are useful.
Unfortunately, there's no general family that can be powered from any voltage and accept inputs of any voltage, although there are plenty of specialized level-shifting buffers (some bi-directional) that have separate power supply pins for just this purpose.
HCT is nice. All the advantages @Leon Heller mentioned, but also TTL compatible inputs. If you need speed, consider ACT. Ti's Logic Guide has lots of details.
You’ll actually want AHC(T) instead of HC(T). HC(T) is okay, but there is little reason not to choose AHC(T).
Other families I will reject include AC and its low-voltage equivalent, LVC. These families have sub-nanosecond rise times, too fast for a breadboard. I also recommend avoiding the bipolar TTL families, including 7400 TTL, STTL, LSTTL, AS, ALS, F, etc. Bipolar logic has become basically outmoded. And it goes without saying to avoid using any ECL 10k or 100k parts, but those are probably outside of the awareness of most beginner electrical engineers.
20 years ago, TI had the following marketing points for their then-new AHC logic family:
“Graduate to new performance levels with AHC... • 3-times faster than HCMOS • Half the static power consumption of HCMOS • Same low noise as HCMOS ...for the same market price as HCMOS.”
TI’s claims about AHC are correct.
The most important thing to hobbyists is edge rates. They want to be able to use ICs without much or any regard for transmission line effects. Because of their nasty parasitic elements, breadboards demand transition speeds of a few nanoseconds at least. AHC has the same rise and fall times as HC, so the usability on a breadboard is similar.
AHC devices share the wide operating range of HCMOS, but are also 5V-tolerant when run from a lower supply voltage. This is a really useful feature which I have always felt was missing from HCMOS. AHC’s output drive current is slightly greater than HC, but still just 8 mA max at 5V. This contributes to the slow edges and good signal integrity on a breadboard we expect from AHC and HC.
See TI’s full AHC(T) designer’s guide for more details: http://www.ti.com/lit/ug/scla013d/scla013d.pdf
Now, I’ll give some further clarification on the “T” variants: HCT, AHCT, ACT, etc. The “T” stands for TTL-compatible inputs. If the chip is to receive signals from a bipolar TTL device, incl. 7400, 74S, 74LS, 74ALS, 74F, then you must either choose a “T” device, such as HCT, or use a 5V-tolerant non-“T” device run at 3.3V or so, and design your system to accommodate the 3.3V output levels.