Demons are deformed creations of the warp in service to the 4 chaos gods Korne, Tzeentch, Slaanesh and Nurgle. Nurgle is the chaos god of filth, pestilence and disease, Korne is the chaos god of blood and Carnage, Tzeentch is the god of deception and deceit and Slaanesh is the god of temptation and ecstasy. All the chaos gods have their own types of demons and devote chaos space marines such as korne bezerkers (korne), noise marines (slaanesh), plague marines (nurgle) and rubic marines (tzeentch) and demons like bloodletters and bloodthirsters (korne), great unclean one’s and nurgglings (nurgle), lords of change and screamers (tzeentch), demonettes and keeper’s of secrets (slaanesh).
Each demon is a shard of its own god and can be absorbed by its god whenever it wishes.
There are 3 types of demon a normal demon spawn with no purpose other than to serve its god, a daemon prince which is a follower of the gods that if it pleases the god than will be rewarded with a demonic ascension and the greater daemons which are more powerful daemons that require an actual body in-order to enter the living world and carry great authority.