Хотя производительность между ними ничтожна, на самом деле она не является отличительной чертой для использования.
При использовании варианта, когда требуется строгий тип, могут быть некоторые нюансы. Например, что происходит, когда вы передаете вариант параметру, ожидающему строку ByRef? Ничего плохого, но происходит нечто большее, чем просто передача адреса.
Следовательно, если вы знаете, что хотите работать со строками, тогда переходите к использованию $ версий этих функций, их поведение и их использование в других выражениях проще и понятнее. Если вы знаете, что вам нужен вариант, и ваши входные данные являются вариантами, то обязательно используйте не $ версии.