The South had better military leadership (at least for most of the war)
The South was defending their home turf.
There were several different fronts.
Disease
The south had Robert E. Lee which was a huge advantage. They cannot be many Officers who both sides in a civil war
wanted to command their army.
Early in the war the North was plagued with incompetent generals. The south was very determined to preserve the Confederacy. Both sides had Generals educated at West Point and they tended to employ similar strategies against each other. In the end, it was a war of attrition... Sherman destroying everything in his path, both sides suffering awful casualties... the north had the industrial might and numbers on its side so it did ultimately prevail.
The top military leadership in the North (McDowell, McClellan, Burnside, Hooker, Meade) were not as good as the top military leadership in the South (Lee, Longstreet, Jackson, Stuart). Grant was not as good a tactician as Lee, but knew how to beat him strategically. Once he took command it was just a matter of time. It took Grant about a year to beat Lee into submission.
Because tactics didn't keep pace with technology.
The weapons they used were deadlier and more accurate.
But the way they fought with them was suicidal.
When they should've been fighting like modern armies, taking full advantage of cover and terrain, they stood in old fashioned ranks.
Kind of hard to fight a war quickly when both sides are losing men faster than replacements can be trained.
In the early years, the military advantages were more to the South.
The South had good generals which could make up for some of their disadvantages but in the end, the North was too powerful.
A big part was diseases. There were locations ripe with malaria and the accompanying mosquitoes. Some say that’s why the colonies won independence and the Civil War lasted months if not years longer.
Because transportation was slow, the Confederates had excellent military leadership, and the Union's military leadership was relatively weak, indecisive and lacked skill and aggression, early on.
The South had better soldiers and generals, and it could fight on the defensive.
The south had better soldiers and generals.