I have read that Gandharvas are related to music and Yakshas are related to nature. Other than these specializations I can't understand the difference.
Are Gandharvas heavenly while Yakshas are earthly—like the difference between Western "angels" and "fairies?" Or are they both divine (or semi-divine??) / celestial?
Please explain how Yaksha & Gandharvas are different.