Absolutely, validation is the process of approving a given object state, while invariant enforcement happens before that state has even been reached.
A corollary is that invariant enforcement is best performed by the thing that is being mutated (or created) itself, like a self-protection reflex, whereas validation is usually done by a third party.
The Always valid school of thought advocates the use of invariants over validation. I think it goes perfectly with DDD and Aggregates.