Emily kills Homer because he will not marry her. Earlier in the story the author points out that he "likes men", implying Homer was gay. Since Emily sees Homer as probably her last chance at marriage, she kills him and keeps his body in her home. In fact, the last line of the story says that, after the townspeople opened the door to a room decorated as a bridal or honeymoon suite, they looked at the bed and saw a "long strand of iron gray hair" next to Homer's body. Emily's hair had not turned gray until after Homer's disappearance so the implication is she had slept with the body. Creepy, huh!