I'd like if I may to go back to a couple of points that were raised earlier. (History teachers can't resist doing this sort of thing now and then. If the moderators delete this post, I'll understand.)
The statement that only a small percentage of men in the Confederate Army owned slaves is certainly true. In 1861 about half of white Southern families owned slaves. Of the slave-owning families, 88% owned fewer than 20, 72% owned fewer than 10, and 50% owned fewer than 5. Too many people get their images of the Old South from one source: Gone With the Wind. Big plantations like "Tara" did exist all right, but only in a narrow swath of the South (the "cotton belt"). Subsistence-level farms, which only grew enough for the family to eat, were the norm in most of the South.
Slavery was, however, absolutely vital to the Southern economy. The vast fields of cotton - almost the only cash crop the South exported - could not have functioned without a huge source of cheap, unskilled labor. Plenty of white Southerners had never laid eyes on a slave, and could only dream about being able to afford one. But the "land of the moonlight on the magnolias, where knighthood was still in flower" couldn't survive economically without slavery. Southern politicians knew that.
The big political issue that split the Union was the issue of whether slavery should be permitted to expand beyond the South, into the newly acquired territories. GMorrison was kind enough to provide a link to the SC Ordinance of Secession. One of the big arguments in it is that "A geographical line has been drawn across the Union, and all the States north of that line have united in the election of a man [Lincoln] to the high office of President of the United States, whose opinions and purposes are hostile to slavery."
There's just no room for argument: slavery was a major - probably the major - cause of the Civil War. I agree with the late Bruce Catton: without slavery the issues might have been resolved peacefully. Slavery could not.
Why did men join the armies? The best study of the subject is a small book by the great Civil War historian James McPherson, called What They Fought For, 1861-1865. Professor McPherson spent years traveling around the country, reading every personal letter by every Civil War soldier in every archive he could find.
He was a little surprised by what he found: lots and lots of soldiers did mention why they thought they were fighting. Dr. McPherson then counted the number of letters that mentioned each reason, and compiled a data base.
The most common reason for joining the Union Army: "to preseve the Union." (Quite a few Union soldiers mentioned freeing the slaves, but that wasn't the most common.) The most common reason for joining the Confederate Army: to "drive out the Yankee invaders and to protect our rights." Another popular Southern answer: "For my state." Scarcely any Southern soldiers mentioned "defending slavery."
Very interesting. But Professor McPherson rightly observes, in his introduction, the basic problem with his research. He was able to find letters from about 600 soldiers (somewhat more Union than Confederate). Six hundred men, out of a total of about two million in the Union Army and 900,000 in the Confederate Army. Any good historian, sociologist, or statistician will tell you that sample is statistically insignificant.
We just don't know why the huge majority of them fought.
I'm not a Civil War specialist, but I've been reading about the subject for well over fifty years. I've visited my share of museums and battlefields. And on several occasions I've felt like I've really come to an understanding of the topic. Then I take a look at that one, overwhelming number: 618,000. That's the number of Civil War graves. (Two-thirds of those guys died of disease, not bullets.)
When I drive through one of the big Civil War cemeteries, like Hollywood Cemetery in Richmond, I realize the truth: I don't understand why those people fought each other on such a scale. And I never will.