Ref vs out в С#

Я прочитал много статей, связанных с параметрами ref и out, и они помогли мне понять основную концепцию этих параметров, но ни один из них не дает мне понять, где мы должны использовать ref и где мы должны использовать.

Было бы очень полезно, если бы кто-нибудь мог дать мне пример, который показывает сценарий, в котором мы можем использовать параметр ref для достижения функциональности, которая не может быть достигнута, используя параметр и наоборот.

Я знаю разницу между параметрами ref и out.

Ref: Я знаю, что нам всегда нужно инициализировать переменную, прежде чем передать ее как ref в методе.

Out: Я знаю, что нам всегда нужно установить значение переменной как параметр out в вызывающей функции до того, как она вернет значение.

Есть ли какой-нибудь пример, в котором я могу использовать параметр ref, но не вне и наоборот?