There are several causes but if you don't include among them, the desire on the part of the Southern states to protect the institution of slavery and to perpetuate its spread into the territories, you're not being honest.
In the Civil War, the North's goal was to defeat the South militarily, and force them to rejoin the union. The south's goal was to hold out long enough to force the North to let them go. They did not aspire to defeat and occupy the North, but they did hope to defeat its Army. The south's armies roamed all over, crossing over into the North, and engaging the North in southern and border states.
So long as the North fought the war by trying to chase down and defeat the South's armies, they could not bring an end to the war. To win the war, they had to take the war to the enemy, much as we have to take the war to the terrorists in order to defeat them. A brilliant way to do that was to slice across the south and cut it in half, while at the same time rampaging enough so that the word got back to the armies in the field and demoralized them, making them eager for an end to the war.
As Sherman said, war is hell. Because it's hell, when you're in one, you want to do what you can to win it and get the hell out of it.
They brought it on themselves because they were in a war and they were going all out to win it, causing immense casualties on the Northern side, and they had left the North no option that would allow them to win except to destroy the South's ability to fight the war. This presaged the type of war that was fought in WW2, where we had to destroy the industry of the Axis in order to win the war, killing millions of civilians along the way. The Civil War was what they later termes "total war".
When you get in a war, especially one that you started, like the South started the civil war, you accept that the other side will do what it takes to win. If you don't, don't get in the war, or surrender. But don't whine about it. That's what war is.
On another note, what Sherman did seems brutal to us today, but in the 1860s, was not outside the bounds of what happened in wartime. The British did crap like that in the Revolution and war of 1812, the French did it in the French and Indian wars, the Europeans did it to each other throughout the 18th and 19th centuries, and most other cultures in existence at that time in Africa and Asia were worse, not better, they just weren't as advanced.
Similarly, when Zarqawi beheads people as part of a brutal strategy to drive out the Americans, its pretty silly for him and Arabs to whine about the mean Americans when they go into Fallujah to wipe out the terrorists, and some buildings and terrorist harboring civilians get hurt in the process. We're at war; they forced us to do it to win the war. That's that.