All three can be used a REST API descriptors. What's the differences? I know this is a heated question, but I simply want a comparison, not a flame war :P
WADL is a standard to describe HTTP-based web applications, typically REST web services. So WADL can be seen as a REST equivalent of WSDL 1.1.
WSDL 2.0 can be used to describe REST Web services and thus competes with WADL. But it has a wider scope.
Quoting this blog post from Eran Hammer-Lahav (a frequent contributor to OAuth, Discovery, XRD, and other emerging community-driven specifications and standards - and Director of Standards Development at Yahoo!):
XRD is a simple generic format for describing resources. Resource descriptor documents provide machine-readable information about resources (resource metadata) for the purpose of promoting interoperability, and assist in interacting with unknown resources that support known interfaces.
For example, a web page about an upcoming meeting can provide in its descriptor document the location of the meeting organizer’s free/busy information to potentially negotiate a different time. The descriptor for a social network profile page can identify the location of the user’s address book as well as accounts on other sites. A web service implementing an API protocol can advertise which of the protocol’s optional components are supported.
So, while WSDL 2.0 competes with WADL as REST Web Service description languages (WDL 2.0 has more but lets forget that for now), XRD is a metadata discovery format for any URI (OpenID discovery being one of the primary use case). XRD (which has its roots in the Identity community) looks different.