A chord progression specifies a series of chords, and when they are played:
| C | C | C | C | F | F | C | C | G | F | C | C |
A chord progression doesn't tell you how to play the chords, only what they are and when they change. It doesn't tell you want instrument to use, what inversion of the chord to use, what rhythm or strum pattern, whether to play block chords or arpeggios, or anything like that.
An instrumentalist can take a chord progression and turn it into their own interpretation of a song. For example, a guitarist can make the chord shapes and strum. A user of some "toy" electronic keyboards can just tap the key corresponding to each chord change, and get a full accompaniment!
A riff is a recognisable sequence of single notes or chords, usually played on a guitar.