PCI vs. PCI-X vs. PCI-Expess slots
A lot of times, when determining what controller / host bus adapter card to buy, you do need to know what type of expansion slot is available in your machine. See pictures below to get an idea.
PCI-X slots are 64-bit slots that are backward compatible with PCI slots. You can insert your 32-bit and 64-bit 3.3V PCI cards into 3.3V PCI and PCI-X slots. Cards with 32-bit or 64-bits universal connector will work with any 3.3V or 5V PCI, PCI-X slots. You can use a 32-bit 3.3V card in a 64-bit 3.3V slot, even though part of the 64-bit slot will not be used. You can 64-bit 3.3V card in a 32-bit 3.3V slot, even though part of the connector on the card will overhang the slot.
PCI-Express is sometimes written as PCI-E or PCIe. Some people tend to mix up PCI-Express with PCI-X, which are not compatible with each other. For PCI-Express, x16 slots will work with x16, x8, x4, x1 cards. PCI-Express x8 slots will work with x8, x4, x1 cards. Therefore an PCI-E x1 cards will work in PCI-E x1, x4, x8, x16 expansion slots. You cannot put a x8 card in a x1 slot as it will not physically fit. Some PCI-E x16 slots on older motherboards are made for graphic cards only so you will not be able to use an I/O expansion card in the PCI-E slot designed only for graphic cards.