Why did he tell him to come to Eretz Yehudah?
Radak: Hashem told him to tell him. There he will be safe from Sha'ul. And so it was - Sha'ul did not seek him until David went to Ke'ilah. This is because David was beloved in Yehudah; if Sha'ul pursued him, they would tell David, and he would flee from place to place. Even though also Ke'ilah is in Yehudah, it is far from David's acquaintances and family. Even so, he went also there according to Hashem's word.
What is "Ya'ar Chares"?
Radak: It is the forest of [a place named] Chares.
Radak citing Shochar Tov 23: It was Yavesh k'Cheres (as dry as dust), and in David's merit, Hashem moistened it. Chares is like 'Charusa bi'Ydei Shamayim' (Chulin 54a), i.e. dried.