
One of the most commonly used examples of the Book of Mormon contradicting the Bible is the alleged location where Jesus Christ was born. The Bible names Bethlehem as the place where Jesus was born, but The Book of Mormon claims he was born “at Jerusalem”.
“And Joseph also went up from Galilee, out of the city of Nazareth, into Judæa, unto the city of David, which is called Bethlehem; (because he was of the house and lineage of David:)”
Luke 2:4
Apparently conflicts with...
“And behold, he shall be born of Mary, at Jerusalem which is the land of our forefathers, she being a virgin, a precious and chosen vessel, who shall be overshadowed and conceive by the power of the Holy Ghost, and bring forth a son, yea, even the Son of God.”
Alma 7:10
If one says he was born in Bethlehem and the other says he was born in Jerusalem, how can they both be correct?
Jesus was born “at” Jerusalem

One way to answer this question is to look at the word choice in the Book of Mormon account.
The Book of Mormon does not claim that Jesus was born “in” jerusalem. It says that he was born “at” Jerusalem. This is important because the word “at”, according to most, if not all, english dictionaries, not only means “in”, but also “nearby”, “within the vicinity of” and even "toward". Bethlehem is only six miles from Jerusalem, which is certainly “nearby” to someone thousands of miles away in the Americas.
Certainly the Lord could have revealed the name of the town of Bethlehem, but it would not have meant anything to the people in America who would have had no point of reference. However, the Book of Mormon describes Jerusalem as a place of special significance for the ancient “Nephites”, so they would have been familiar with it's general location so using it as a landmark would have been made the prophecy of Christ's birth much more informative.
For example, I lived in the Philippines for two years. During that time many people asked me where I was from. I had grown up less than an hour from San Francisco, but when I named my small town, they looked at me with confusion. After all, most people in California had never even heard of my town. However, when I told them I was from “near San Francisco”, a much larger city, it was a much more helpful answer.
Therefore, in using the word “at”, it was not necessarily intended to mean that Jesus would be born “in” Jerusalem, but “near” Jerusalem.
This interpretation is substantiated by the discovery of the Amarna Letters.
The Amarna Letters

The Amarna Letters are a series of clay tablets sent from Egyptian administrators to the members of Canaan and other regions. These tablets were discovered in 1887 and have been dated to around the 1350s – 1330s BC. These documents refer to the “land of Jerusalem” as a region covering about 500 square kilometers. This would include Bethlehem.
So even if one were to ignore the full meaning of the word “at”, the fact remains that the phrase “at Jerusalem” still includes the area around Jerusalem. Just as New York City is a city within the State of New York, and Rome was a city within the Empire of Rome, or the Roman Empire, so to is Jerusalem a city within “the land of Jerusalem”.
So even though the Bible and the Book of Mormon claim two different places as the birth place of Christ, there is no contradiction. “Jerusalem”, at that time, also referred to the surrounding area, but even if The Book of Mormon refers specifically to the city, the word choice still implies that the birth would happen in or near the city, which it was.
So was Jesus born in Jerusalem or Bethlehem? Both.