Частичное работает, только если оба файла находятся в одном проекте, и вы можете получить доступ к закрытым и защищенным членам этого класса.
Методы расширения являются просто статическими методами и не могут получить доступ к закрытым членам.
Итак, если вы хотите получить доступ к закрытым и защищенным членам, то единственный способ, которым вы располагаете, является частичным, если нет, ответ на вопрос, должен ли метод, который вы хотите добавить, быть видимым везде, где вы хотите использовать класс?если да, используйте частичное, если нет, это какое-то расширение, используйте методы расширения.
Кстати, если первый класс не сгенерирован каким-либо инструментом, вы можете написать свою функцию там, за исключением использования частичного;)
надеюсь, это поможет