- "David did - Thus David prevailed over the Philistine with a sling and a stone, and he struck the Philistine and killed him; but there was no sword in David’s hand. 1 Samuel 17:5
- Elhanan did - And there was war with the Philistines again at Gob, and Elhanan the son of Jaare-oregim the Bethlehemite killed Goliath the Gittite, the shaft of whose spear was like a weaver’s beam. 2 Samuel 21:19
This is the correct answer; namely, that Elhanan killed Goliath's brother.
Second, it appears there was a copyist error in 2 Samuel 21:19. According to Gleason Archer's Encyclopedia of Bible Difficulties on page 179, it says,
Therefore, we see that 2 Samuel 21:19 had a copyist error and 1 Chronicles 20:5 is the correct information." CARM
- The sign of the direct object, which in Chronicles comes just before "Lahmi," was '-t; the copyist mistook it for b-t or b-y-t ("Beth") and thus got Bet hal-Lahmi ("the Bethlehemite") out of it.
- He misread the word for "brother" ('-h) as the sign of the direct object ('-t) right before g-l-y-t ("Goliath"). Thus he made "Goliath" the object of "killed" (wayyak), instead of the "brother" of Goliath (as the Chronicles passage does).
- The copyist misplaced the word for "weavers" ('-r-g-ym) so as to put it right after "Elhanan" as his patronymic (ben Y-'-r-y'-r--g-ym, or ben ya 'arey 'ore -gim -- "the son of the forests of weavers" -- a most unlikely name for anyone's father!). In Chronicles the 'ore grim ("weavers") comes right after menor ("a beam of ") -- thus making perfectly good sense.
And another apparent "contradiction" of Scripture answered........