I read the documentation and I can't figure out what makes them different.
:se[t] no{option} Toggle option: Reset, switch it off.
:se[t] {option}! or :se[t] inv{option}
Toggle option: Invert value. {not in Vi}
For example, I thought that if I used :set noic therefore I shouldn't be able to :set invic because the option is disabled altogether as there's nothing to invert.
But apparently, you can still invert it.