I am runing out of sata connections and need to expand using a pci card, however, i only have a pci express 2.0 slot available, will a pcie 1.0 (pci express 1.0) expansion card work in a pci express 2.0 slot?
TL;DR; Yes, you can.
PCI express is backward compatible. You can run a PCI-e version 1 device is a PCI-e version 2 slot. You will only get PCI-e version 1 speeds though (which is up to 2.5 megabit per lane).
As to the X16: You can run any card in any slot into which it fits. It will use the maximum available combination of lanes.
It depends from your host: the compatibility is not really complete. For example, I tried an old network card on a DELL PowerEdge T30, but it did not work. Finally I found the problem was at the PCIe level. The user manual of T30 states NOTE: All the PCIe slots support Generation 2 and 3 PCIe expansion cards. As you see, there is no mention of PCIe 1.0 nor 1.1.
And, in my case, the network card box only mentioned require a PCIe compatible bus. I had to look for the chipset datasheet in order to find the PCIe version required.