Macbeth says "Who could refrain / That had a heart tol ove, and in that heart / Courage to make 's love known?" when he explains his actions in killing the guards. Significantly, he attributes the act to his courage--that his love for Duncan was so intense that it gave him "courage" to kill the guards, the supposed murders of the king. Of course his real reason was to eliminate possible witnesses, and even Lady Macbeth is worried that his story sounds a bit weak, and therefore pretends to faint, crying "Help me hence, ho!" to distract the MacDuff, Malcolm, Donalbain, and the rest. She is not successful, for at least the latter two immediately suspect something is amiss, and for that reason leave, for they understand they are not safe in Macbeth's castle.
After first feigning ignorance, Macbeth comes forward with an excuse. Macbeth tells Macduff and Lennox that when he went to Duncan's room and found him dead, he became enraged by the sight of the guards, covered in blood and holding the daggers, and killed them. He claims it was in his grief he committed the murder to avenge Duncan's death.
The true reason he killed the guards is that when he went to approach Duncan, one of the guards yelled "Murder!" in his sleep and caused both guards to awaken. He kills them to cover his tracks, as witnesses were not an option.
Macduff is the only character who seems to suspect Macbeth. Macbeth's story does not seem to satisfy Macduff, and he will exhibit further signs of distrust later in the play.