After Adam sinned, Hashem rebuked him directly because there was nobody else through whom to rebuke him. But why did He not rebuke Kayin through Adam?
Oznayim la'Torah: Because Kayin would have retorted, 'First rectify yourself before trying to rectify me -in spite of the fact that Kayin's sin was many times greater than that of Adam. 1
See Oznayim la'Torah.
Why did Hashem ask Kayin where Hevel was (as if He didn't know)?
Rashi: This was Hashem's way of entering into a conversation, 1 hoping that this would prompt Kayin to do Teshuvah.
Seforno: He was actually asking him where he had buried Hevel - for the same reason as in answer #1. 2
Because 'Hashem does not want a person to die, but to do Teshuvah and to live' (cf. Yechezkel 33:11).
How did Kayin interpret Hashem's question?
Rashi: Kayin took Hashem's question literally, and tried to fool Him into believing that he didn't know where Hevel his brother was. 1
Seforno: Since Hashem's words did not come in the form of a prophecy, Kayin thought that Hashem does not always know everything that occurs, and was simply asking for information.
See Sifsei Chachamim as to why Rashi did not say the same about Adam (3:9).
How could Kayin say "Lo Yada'ti"?
Rashi: He was trying to fool Hashem - since he believed that not everything is revealed before Him. 1
Rashi (in Melachim II 20:14): Kayin is one of three people (Kayin, Chizkiyahu, and Bil'am) whom Hashem tested and who turned out to be 'a pot of dirty water' - He should have replied 'Ribono Shel Olam, are not all hidden things revealed to You?!'
What did Kayin mean when he asked Hashem, "ha'Shomer Achi Anochi?!"
Rashi (in Midrash Rabah): He meant 'You bear the title Shomer. You ought to have guarded us when we quarreled! Now he is dead, and You are looking for him'?
Targum Onkelos and Targum Yonasan: He meant simply, '(Why do You ask me?) Am I my brothe's keeper?!'
Why did Hashem need to say, Hevel 'your brother'? There was no other Hevel!