It is easy to say that the Civil War began and ended with the issue of slavery; however, the slavery reason in recruitment did not reach its peak until Lincoln issued the Emancipation Proclamation. This happened well into the war and was used brilliantly by Lincoln to keep European Countries from siding with the South. (The major countries in Europe were giving up or had given up slavery in the past century and were putting pressure on the United States to follow. Once the Emancipation Proclamation was given, European countries couldn't side with the South without legitimizing slavery.) It also served as a rallying cry for abolitionists to join the military (Though even then their numbers were considerably lower than that of Irish and German immigrants. [See below.])
So, if the major reason wasn't slavery- why were the soldiers fighting?
Let's start with the South:
First, not everyone owned slaves in the South. Below is from the 1860's census: It lists the percentage of white households that owned slaves. In general, slavery was not an aspect of the daily lives of most southern citizens.
Mississippi:49%South Carolina:46%Georgia:37%Alabama:35%Florida:34%Louisiana:29%Texas:28%North Carolina:28%Virginia:26%Tennessee:25%Kentucky:23%Arkansas:20%Missouri:13%Maryland:12%Delaware:3%
The majority of soldiers were fighting against what was called "Northern Aggression." In other words, they were fighting against Federal control of the States. (It's basically going back to the Constitutional Convention and the argument over Federal oversight.) The South felt strongly that the 10th Amendment applied in regard to the slavery decision- In other words, since the Constitution did not give the authority to decide on whether slavery was right or wrong to Congress, according to the 10th Amendment, the states should decide based on popular sovereignty. For the South, Congress (which at this time was on the brink of being controlled by abolitionists) had been checked by the previous Presidents who had basically upheld the 10th Amendment as the reason for slavery in the U.S.- Pierce and Buchanan notably, but the tradition goes much further back.
The 1860 election of Lincoln put Congress in a much better position of abolishing slavery. For the South this meant that the Federal Government was going to push Federal oversight and force the removal of slavery in the Southern States going against popular sovereignty and the 10th amendment. This was unacceptable in the South. They held that the 10th Amendment was being violated, and they would not let it stand. Rather than give up their rights as states, they chose to break away from the Union. When the North "invaded"-- Southern Soldiers enlisted--not to keep slavery but to protect the rights of their states to determine their own interests.
A good example of this is Robert E. Lee. Robert E. Lee was opposed to slavery. Read the letter he wrote to his son on the subject: http://www.civilwarhome.com/leepierce.html. Lee was invited by Lincoln to lead the Union Army. He declined, choosing instead to support his home state, his relatives, and neighbors in Virginia. He was not alone. Many journals from the South show southern farmers who do not like the establishment of slavery, fighting for the South due to State Rights issues.
For Northern soldiers some did fight to free the slaves. This was largely tied to religious beliefs found in the more Puritan states where the inhabitants felt that slavery was *morally* rather than politically wrong. Many of the early enlistments from the middle states were also tied to the sense of patriotic duty to the United States. The ideal of keeping the country together through the military was not new. During Presidents Jackson, Harrison, and Taylor the South had threatened leaving the Union; however the military was enough to keep them in line. Last, like today, military service was a monetary benefit to struggling farming families where sons could fight for the country and send the money home to help their parents.
It is important to note that African Americans in the North were forbidden to enlist until two years into the war. Once the Emancipation Proclamation was established, several adjustments to the laws forbidding African American enlistment were put in place and the African American soldier count began to rise.
However a good percentage of Northern Soldiers were German and Irish Immigrants right of the ship. Approximately 200,000 German immigrants fought in the Civil War and 170,000 Irish. These soldiers had little to no abolitionist or political entanglements. They fought for societal acceptance and many fought for a patriotic idealism that broke them away from the injustices of their old countries. Joining the war was also practical. It gave them food, shelter, and money to support their families.
As for Congress-- It is important to note the importance of the South to the economic health of the United States. The South due to the Cotton Boom was one of the more wealthy areas of the world and was collecting a great deal of money. The United States needed the South in order to remain financially stable. (Ironic that the Civil War will squash the Cotton Boom and send the South into an Economic Depression while the North headed into an industrial boom.) Because of this, Congress will put considerable effort into recruitment offering incentives, land grants, etc in order to pursue the unity of the United States while achieving freedom for slaves.