에게, 한테, 께 are the same in meaning and they are used like "to" or "for".
에게 is used in writing while 한테 is used in speech. 께 is honorific and formal, it's used mostly at workplace when talking about their higher-ups.
For example, you can say 사람에 좋은 비누 or 사람에게 좋은 비누 to mean "soaps good for human beings. They are both acceptable. In this case, I'd say the difference between the two is that -에 gives a more *broad* feel than -에게.
If you want to say "soaps good for me (personally)", you can say 나에게 좋은 비누(나"한테" 좋은 비누 when you speak - "에게" is used in writing).
Please explain it to me. 저에게(or 제게) 설명해주세요. -에게 = to
German is difficult for me 저에게 독일어는 어려워요. -에게 = for
Please tell me. 저에게 말해주세요. -에게 = indirect object marker(as Steve said)
As an example of how -에 is used, "환경에 좋은 비누" means "soaps good for environment", you can see 에 is used as "for" here.
Examples where 에 is used as "on" :
책상에 올려두세요 Put it on the desk
의자에 앉으세요 Sit on the chair.
버스에 타세요. Get on the bus.
Examples where -에 is used as "in" :
수학에 관심 없어요. I'm not interested in math.
엘리베이터에 갇혔어요. I'm trapped in an elevator.
Examples where -에 is used as "to":
집에 가세요. Go home. (In English, you don't say "Go to home")
저 방에 가세요. Go to that room.
Examples where -에 is used as "at":
점심시간에 만나요. Meet me at lunchtime.
그 말에 깜짝 놀랐어요. I was surprised at the word.