Some argue that the Bible is contradictory concerning whether David was guilty of numbering Israel. The argument is that 2 Samuel 24:1 says that God incited, or moved, David to number Israel, but 2 Samuel 24:10 says that David sinned in numbering Israel. However, the solution to this alleged contradiction in the Bible is simple.
Again the anger of the Lord was kindled against Israel, and he incited David against them, saying, “Go, number Israel and Judah.”2 Samuel 24:1 (KJV)
But David’s heart struck him after he had numbered the people. And David said to the Lord, “I have sinned greatly in what I have done. But now, O Lord, please take away the iniquity of your servant, for I have done very foolishly.”2 Samuel 24:10 (KJV)
Both statements are true: God moved David to number Israel and David sinned in numbering Israel. The Bible teaches that God is completely sovereign over creation, which means that, in a sense, God is ultimately the direct cause of everything that happens in the universe. However, this does not make God guilty of sin, since it is still always the one who actually commits the sin who is guilty of the sin. So, even though God moved David to number Israel, it was still David who was guilty of the sin of numbering Israel, since it was David himself, and not God, who actually committed the sin of numbering Israel. There is simply no logical contradiction here. Some might say it is unfair for God to move someone to commit a sin, and then punish that person for the sin, since the person did not have a choice. However, God does not “force” people to commit sins against their will. Everyone who commits sin does so willingly, and so is guilty of the sin. That God is sovereign over the human will simply does not make humans any less guilty of their sin.
To read more answers to alleged and apparent contradictions in the Bible, see “Contradictions” in the Bible Answered.
These books are also excellent resources: