I understand that in order for an bond to IR active, there needs to be a change in the dipole moment of the bond. This excludes Cl-Cl etc non-polar molecules. I can never see any reference to a C-C (single) bond absorption, but there is a C=C absorption (also a C-C triple).
In short, why does any C-C bond - and especially the C=C bond absorb IR?
You are right that there must be a change in dipole moment for the stretch to be IR active. To determine whether or not there will be a change in dipole moment, examine the bond that's stretching and look at the two fragments that it's connected to. If these two fragments are equivalent, there will be no net change in dipole moment for the symmetrical stretch and it will be IR-inactive.
For example, the carbon-carbon triple bond in acetylene does NOT have an IR active stretch, just as the nitrogen-nitrogen triple bond in free dinitrogen does NOT have an an IR active stretch.
Another example (with sample spectra) is 2,3-dimethyl-2-butene. Both sp2 carbons have the exact same substituents and the C=C stretch produces no change in dipole moment. The IR spectrum of this molecule has no C=C stretch in the 1600 cm-1 region. AIST:RIO-DB Spectral Database for Organic Compounds,SDBS