Breaking public key cryptosystems would be a better counterexample. Most NP-hard optimization problems can be solved in practice. While there are always some degenerate instances nobody knows how to handle, realistic instances tend to be easy enough to solve or at least approximate accurately.