This question already has an answer here:
What is the big difference between software RAID and hardware RAID at the low level?
What is really going on that sets the two apart?
As far as I know, the only difference is the RAID card can have cache and it has its own processor on-board. But are there other aspects that go in the background that can make one better then the other in certain situations?