Вы должны передать переменную для параметра out. Вам не нужно инициализировать переменную перед ее передачей:
MyMessagesType messages;
myResult = MakeMyCall(inputParams, out messages);
Как правило, вы можете просто игнорировать «сообщения» после вызова - если только «сообщения» не нуждаются в удалении по какой-либо причине, например, из-за использования ограниченных системных ресурсов, в этом случае вам следует вызвать Dispose ():
messages.Dispose();
Если он может использовать значительный объем памяти и какое-то время будет оставаться в области видимости, вероятно, следует установить значение null, если это ссылочный тип, или новый экземпляр по умолчанию, если это тип значения, чтобы мусор сборщик может вернуть память:
messages = null; // Allow GC to reclaim memory for reference type.
messages = new MyMessageType(); // Allow GC to reclaim memory for value type.