While the concept of "compression" connects them, these are quite different types of thing.
In an autoencoder, you learn a representation for your data. So you'll get a function mapping from, say an image, to a representation vector. Then you can optimize for desirable qualities for this representation vector, such as sparsity. This will hopefully result in meaningful axes in the representation space, which kind of indicate the presence or absence of different aspects in the input (e.g. whether the input contains a face with glasses or without, etc.). This is an unsupervised approach and results in a (typically lossy) compressed version of the input.
In network pruning you take a previously trained (typically, but not always, in a supervised manner) network and remove individual parameters (weights) from it (i.e. set them to zero) while trying to preserve as much accuracy as possible. Here the trained network itself is compressed.
In an autoencoder, you learn a representation for your data. So you'll get a function mapping from, say an image, to a representation vector. Then you can optimize for desirable qualities for this representation vector, such as sparsity. This will hopefully result in meaningful axes in the representation space, which kind of indicate the presence or absence of different aspects in the input (e.g. whether the input contains a face with glasses or without, etc.). This is an unsupervised approach and results in a (typically lossy) compressed version of the input.
In network pruning you take a previously trained (typically, but not always, in a supervised manner) network and remove individual parameters (weights) from it (i.e. set them to zero) while trying to preserve as much accuracy as possible. Here the trained network itself is compressed.