I’d say that Soft Margin SVM is better than Hard Margin SVM, because:
In the below diagram you can notice overfitting of hard margin SVM.
Soft-margin SVM can choose a decision boundary that has non-zero training error even if the dataset is linearly separable, and is less likely to overfit. You can notice that decreasing C value causes the classifier to leave linear separability in order to gain stability.
You need to set the best value of C in SVM. The more optimal value of C will give you more accuracy.
Hope this answer helps.