All else equal, margin is good. Actual data to which the fitted classifier may be applied might have points which are more extreme, toward the other side of the classification, than anything in the training sample, so maximizing margin can improve the robustness. So if the training data can be perfectly separated, you might as well separate by as much as possible.
On the other hand, the idea of having a rigid boundary which perfectly separates the training data might result in an overfitting. Hence, soft margins.This is a whole different ballgame in which "negative" margins are allowed, explicitly recognizing the possibility of and allowing imperfect classifications on training data.This is an alternative to going into a high-enough dimensions space to perfectly separate the data. It might result in better generalization.