I have read this story several times over the years, and of course I am no longer surprised by the ending. However, I believe I was surprised and that every reader must be surprised by Faulkner's skillful plotting. He makes it quite clear to the reader that Emily Grierson intends to murder Homer Barron by creating a scene in which she goes into a drugstore to buy arsenic. The perceptive reader naturally suspects that she intends to use it on her lover, but a really perceptive reader might suspect that Faulkner has a hidden purpose for planting such a conspicuous clue.
The druggist sells Emily arsenic while her two female cousins from Alabama are visiting her. Emily just stares at him when he tells her that the law requires her to tell him why she is buying it. He backs down without an answer and writes ‘‘for rats’’ on the box. (eNotes Study Guide)
Then the anonymous narrator describes a strange smell coming from the house. It is so offensive that people complain to the authorities, but nothing is done and eventually the smell goes away. Here again the perceptive reader assumes the smell was caused by a decaying corpse, which it was.
But what the reader is not prepared for, because Faulkner has been planting misleading clues, is the discovery that this dignified, aristocratic old lady has been sleeping with the rotting corpse of Homer Barron ever sincce she murdered him years earlier. That is the real surprise ending. It is created mainly by the discovery of one of Emily Grierson's gray hairs on the other pillow. The reader realizes that she was completely insane and can imagine her sleeping beside the corpse and finally beside the skeleton every night.
And on the bed was “the man himself,” with a “profound and fleshless grin.” Although never mentioned by name, the fleshless skeleton, in the position of an endless embrace, is that of Homer Barron. Next to his head is a second pillow, with the “indentation of another head,” and on it is a “long strand of iron-gray hair.” (eNotes Study Guide)