ACharacter is a child of APawn class. Both of them can be possessed by players and AI.
But ACharacter is a bit extended. It has a movement component with replication.
You should use ACharacter for all human-like species in your game. But for example, to implement a drone or anything with unusual movement it might be better to use APawn.