In diabdat.mpq archive and in the code of the game, there are monsters that were never used in the final version of Diablo, but some of them were added in Hellfire expansion for Diablo as new monsters.
In total there are 41 missing monsters in the game - 20 normal and 21 unique. It is unknown why Blizzard removed these monsters, perhaps as it usually happens, they are remains of something that was never fully implemented.
We have slightly different situation with bosses, as some of them will never appear even if they are based on a monster that is available in the game. This is related to the fact that for a boss to spawn on a certain level, the monster on which it is based must also be present on that level. Some of the bosses have the dungeon level on which they spawn set wrong, hence the game will never generate them.