In the common architectures pooling operations are usually used.
However, such high number are also common to see.
Have a look at the classic VGG16 5 architecture.
The last pooling layer returns an activation of [batch, 512, 7, 7] which is fed into a Linear layer with 4096 units. This connection has 512*7*7*4096 = 100,760,448 parameters (skipping the bias here).