There are two reasons why "dips" in the mains supply are not going to affect the Arduino; one is that the power supply to the Arduino should filter out such "dips" and especially so if it is a switchmode supply which usually has considerable reserve.
The second is that a desk lamp is not going to cause such a "dip", whilst the vacuum cleaner, washing machine or a power tool well might; it is very much a matter of magnitude.
So it clearly is electromagnetic induction. The base of the halogen lamp contains a moderate size power transformer (though they will be moving toward switchmode supplies now), and switching it on or off will create some magnetic transients. A major problem is if you are using a breadboard and "jumper" wires, as you create loops of significant size in the wiring which pick up such magnetic transients which may be measured in nanoseconds. A physical switch is particularly good at creating such impulses, the more so if a spark is produced. Sparks were the basis of the "early days" of wireless transmission.
LCD displays appear to be particularly susceptible to such interference, judging by the frequency of such problems reported here.
So keep your wiring "tight" with wires to each location bunched together.