Я был удивлен узнать, что "касательно" и параметры не отмечены специальным атрибутом, несмотря на существование ParameterInfo. IsOut, ParameterInfo. IsIn (оба из которых всегда являются ложью насколько я вижу), ParameterAttributes. В и ParameterAttributes. Вместо этого "касательно" параметров на самом деле представлены специальным видом объекта "Type", и параметры только касательно параметров с дополнительным атрибутом (какой атрибут я еще не знаю).
Так или иначе, для создания - касательно аргумента Вы тип вызова. MakeByRefType (), но мой вопрос, если Вы уже имеете - касательно типа, как Вы возвращаетесь к исходному Типу?
Подсказка: это не UnderlyingSystemType:
Type t = typeof(int);
Console.WriteLine(t.MakeByRefType().UnderlyingSystemType==t); // FALSE