These are not really game terms, i.e. use English definitions—sorta
The rules of the game have very specific definitions, and we can usually trust the authors to (try to) be consistent in their usage. But neither “soul” nor “spirit” is a defined term of the rules of the game. They’re using—mostly—their usual English-language definitions.
On the other hand—and D&D, both 5e and historically, has been (deliberately?) unclear about this—the text of D&D is describing a specific(-ish) setting. I don’t mean the Forgotten Realms or Eberron, I mean the world of D&D. Some things in D&D work in very specific ways, that really aren’t necessarily “generic.” Magic, for the obvious example; the Jack Vance-inspired spellcasting of D&D is very specific and not at all the usual in a lot of fantasy literature. But even beyond that—many of the classes play on very specific tropes, not necessarily hinted at by their names, there’s the various monsters, and so on. D&D has a conceit of being a generic game system, potentially suitable for running all kinds of games, but the reality is that there are some very specific setting details baked into the game that cannot be easily changed.
And souls and spirits may fall into this category.
As in English, D&D “spirit” and “soul” can be interchangeable
As noted at the outset, rule terms are used (mostly) consistently. Non-rule terms are not. The authors are using “spirit” and “soul” as their English-language meanings, and in the English language, these two words are mostly synonymous. So too in D&D text.
Is there a distinction between these two words in English? Maybe, sometimes, but a lot of times both words work and authors will use them interchangeably. English writing often encourages using synonyms over using the same word over and over, and so “spirit” and “soul” can even be used in the same passage to refer to the same thing. And this happens in the writing of D&D text as much as it does in any other English-language text, because the lack of rules-status for these terms doesn’t give the authors any strong incentive not to.
Also, expecting “soulless” to necessarily mean “without a soul in the sense of this tangible aspect of reality that interacts with spells and the afterlife” is a mistake. That adjective primarily means “inhumane” and is synonymous with “heartless.” I’m not going to give the “soulless spirit” any significant consideration; I don’t think it merits any. The adjective is a commentary on its behavior, not the actual status of its soul.
There can also sometimes be a distinction
In my mind, the distinction that is sometimes made between “spirit” and “soul” is that a spirit can be a stand-alone thing, while a soul is more strongly associated with a mortal.
Dictionary definitions back me up in this somewhat:
Definition of spirit (Entry 1 of 2)
- an animating or vital principle held to give life to physical organisms
- a supernatural being or essence
(Merriam-Webster Dictionary definition for “spirit”)
Definition of soul (Entry 1 of 2)
- the immaterial essence, animating principle, or actuating cause of an individual life
- a: the spiritual principle embodied in human beings, all rational and spiritual beings, or the universe
(Merriam-Webster Dictionary definition for “soul”)
Both list other definitions that aren’t really relevant here, some of which overlap, and the list under “spirit” definition 2 includes an entry that references “soul” 2a, so we still see that they can be interchangeable. But “spirit” includes a definition of a “supernatural being” that is not necessarily associated with a seprate thing—a spirit can be its own thing, in a way that the word “soul” is not usually used.
This would explain fey spirits, celestial and fiendish spirits, elemental spirits, etc. etc. English would have us use the word “spirit” for those, and probably not use the word “soul.” But undead can often go either way—their former association with a living body means they can be described as a “soul” even if they’re stand-alone now.
Former editions of D&D got more detailed about this
As far as I know, no edition of D&D explicitly called out or defined “spirit” or “soul” in any particular manner (in a global, general sense; see below), but the distinction we see between spirit and soul did get more explicit attention paid to it.
From the 3rd edition definitions of various creature types,
Unlike most other living creatures, an elemental does not have a dual nature—its soul and body form one unit. When an elemental is slain, no soul is set loose. Spells that restore souls to their bodies, such as raise dead, reincarnate, and resurrection, don’t work on an elemental. It takes a different magical effect, such as limited wish, wish, miracle, or true resurrection, to restore it to life.
Unlike most other living creatures, an outsider does not have a dual nature—its soul and body form one unit. When an outsider is slain, no soul is set loose. Spells that restore souls to their bodies, such as raise dead, reincarnate, and resurrection, don’t work on an outsider. It takes a different magical effect, such as limited wish, wish, miracle, or true resurrection to restore it to life. An outsider with the native subtype can be raised, reincarnated, or resurrected just as other living creatures can be.
Here, we see the word “soul” used to refer to a creature that is stand-alone—but it’s called out as an unusual thing.
The use of the word “dual” here comes from “dualism,” the philosophical belief in body and soul (or mind and body) as two separate entities. Thus, a fire elemental is not a body (made of flame) with a soul—it is a soul, of fire, made flesh. It is “fire incarnate.” (“Incarnate” comes from the Latin “in carne,” literally “in a body.”) And a fiend is “evil incarnate.” In 3rd edition, this had awkward implications for the use of resurrection magics, as you’ll see in the quotes.
And 3rd edition even provided a game-rule definition of “spirit,” well, kinda:
What Is A Spirit?
Several of the spirit shaman’s abilities affect spirits. For purposes of the spirit shaman’s ability, a “spirit” includes any of the following creatures:
- All incorporeal undead
- All fey
- All elementals
- Creatures in astral form or with astral bodies (but not a creature physically present on the Astral Plane)
- All creatures of the spirit subtype (see Oriental Adventures)
- Spirit folk and telthors (see Unapproachable East)
- Spirit creatures created by spells such as dream sight or wood wose (see Chapter 7).
In the spirit shaman’s worldview, elementals and fey are simply spirits of nature, and incorporeal undead are the spirits of the dead.
(Complete Divine, pg. 17)
Here we see some breakdown of definitions, because this lists fey, even though fey do (in 3e) exhibit a “dual nature,” that is, they have a soul that is distinct from their body. We see the author needing to address that specifically, and how this definition is limited to “For purposes of the spirit shaman’s ability,” largely because of this discrepancy. And we see how since then, at least now in 5e (I’m not sure about 4e), fey had become one of these “spirit” types, at least some of the time.
But since 5e got rid of the difficulties raising these creatures from the dead, there was no need to be specific about it. They don’t even necessarily have to be consistent about it—one fey, say a satyr, could have a dual nature, while another, say a familiar, may not.
What I’m getting at here is that “spirit” can—sometimes—refer to creatures without dual nature, while “soul” can—sometimes—refer to one half of those creatures that do exhibit a dual nature. Since it no longer has mechanical effect, we can’t expect authors to necessarily be consistent about this, but since we also more-or-less presume that the underlying reality being described hasn’t changed—except where we know it has—we can sometimes see authors’ wording choices hinting at this.
- “Outsider,” for the record, was the type that applied to the native creatures of the Outer Planes—the heavens and hells and so on. In 5e, we have celestial and fiendish, but it’s less clear what Lawful or Chaotic outsiders should use—and those that have been published have been inconsistent. 3rd edition also had a concept known as “native outsider,” that is, the same kind of thing as outsiders were, but for the Material Plane. These 5e has mostly made fey—you may notice that the 3e fey definition does not mention this thing about souls, because “fey spirits” were mostly not fey in that edition—though some are celestial or fiendish because they were good or evil, even if they aren’t from the Upper or Lower planes.