The correct answer is a bit more complicated than that given above. The First Crusade was preached by Pope Urban II after he received a message from the Byzantine Emperor, Comenus Alexius I, asking him for help in repelling Islamic invasions. Urban envisioned this as an opportunity to re-unite the Eastern and Western Churches which had split in 1054. Additionally, Europe was a particularly violent place at this time. With the cessation of the Viking invasions, knights had no one to fight, and thus frequently fought with each other. The famous jousts and melees were a method of allowing knights to vent their fighting spirit. The situation was so bad that two decrees by the church, the famous Peace of God and the Truce of God prohibited killing anyone on the Sabbath or during Lent, and also prohibited the killing of a clergyman. It appears that Urban saw the situation in the Holy Land as an opportunity to direct the fighting spirit of the knights against a true enemy. It is significant that Urban called a Church Council at Cluny where the First Crusade was preached. Church Councils were the only authority which could overrule the Pope. Urban added emphasis to the importance of the Crusade by using this method.
Crusading was an expensive proposition; so to enhance knights to go, they were promised absolute absolution from any sin they committed while on Crusade. This was a virtual license to kill. Additionally, any property they held was exempt from seizure while they were fighting.
Religious fervor was not enough to inspire knights to go on crusade; they also were after wealth and power. Interestingly, they did not "free" Jerusalem, but rather sat up a Crusader state with one of their own as King of Jerusalem.
An excellent resource you might want to consider is Holy Warriors, the Crusades and their Effect on Today's World by Jonathan Philips.
Although it is possible to argue this, I would say that the most significant cause of the Crusades was religious fervor and the desire to eject the Muslims from the Holy Land.
It is possible to argue that there were other motives, both for those who called the Crusades and those who went on them. You can say that Pope Urban II was trying to increase papal power and prestige by declaring the Crusade. You can say that the knights who went on the Crusades were trying to gain glory and wealth.
However, I would argue that the main goal was still a religious (if misguided) one. I would argue that the Popes and the Crusaders sincerely wanted to "free" Jerusalem and other holy places from the Muslims. Their desire to do so led to them calling and going on Crusades.