Who are Hamlet's foils, and in what ways do their characters shed light on his?
Hamlet's only conspicuous foil is Laertes, the son of Polonius. Laertes is impetuous and headstrong. Unlike Hamlet, Laertes acts without considering the possible consequences. In this respect he is the exact opposite of Hamlet, who procrastinates and meditates until forced to take action against King Claudius in the very last scene of the play. The sharpest contrast between Laertes and Hamlet is to be seen in Act 4, Scene 5, where Laertes impulsively and without adequate preparation leads a mob against Claudius seeking revenge for his father's murder. Laertes is doing what Hamlet should have done. However, the ease with which Claudius pacifies the headstrong Laertes, and actually turns him into a co-conspirator against his stepson, suggests that Hamlet might be the more intelligent and judicious of the two men, and that patience and caution might be understandable in such a delicate undertaking as assassinating a king and establishing a new monarchy.
Horatio is the only other young male who might be considered a foil to Hamlet, but he seems to exist as a character mainly as a friend with whom Hamlet can share his thoughts, feelings and especially his secrets. Rather than being a foil, Horatio is more like Hamlet's alter-ego. Without Horatio to confide in, Hamlet might be forced to talk to himself in additional soliloquies. There are already almost too many of these in the play; more of them might become tiresome and annoying. No doubt Shakespeare had to wrestle with the problem of portraying a man whose conflict was mainly internal and created Horatio in order to dramatize some of that conflict with dialogue.