причина, по которой я задал этот вопрос, состояла в том, что после прочтения совета msdn о перегрузке этого оператора в конце страницы он упомянул:
Общей ошибкой в перегрузках оператора == является использование (a == b), (a == null) или (b == null) для проверки ссылочного равенства. Это приводит к вызову перегруженного оператора ==, вызывающему бесконечный цикл. Используйте ReferenceEquals или задайте тип Object, чтобы избежать цикла.
поэтому мне было интересно, следует ли мне реализовать перегрузку для стандартного сценария.
Нет! Не связывайтесь с эталонным равенством, если не знаете, что делаете. Внедрите метод IComparable Equals, если вам нужно.
Изменить: для лучшего поиска изображения Эффективный С#, Item # 9.
Изменить: вы можете добраться отсюда: