The differences are subtle.
Obsolete: Not in use anymore, something that has been definitely replaced by something newer or better.
Outdated/out of date: Old fashioned and not as good as something modern.
Dated: something with a very obvious origin in a bygone time.
Depending on context, they all can be used in place of each other.