Hi Enrico! Apologies for the late reply, but I wanted to add that if you are looking to use %ListOfObejcts on the IRIS side with an array on the .NET side, that's still possible. Here's a snippet of code as an example:

    set addressArray = ##class(%ListOfObjects).%New()
    do addressArray.Insert(home)
    do addressArray.Insert(home2)
	// create an array of Address on the .NET side, populated with values from addressArray
    set test.AddressArray = gateway.new("Samples.InterSystems.Gateway.Address[*]", addressArray)
	// get Address array from .NET, and populate %ListOfObjects with its values
    set addressArray = test.AddressArray.%getall()
    for i=1:1:addressArray.Count() {
        set home = addressArray.GetAt(i)
    }

I'm working on a larger example to demo the new gateway and will be posting that soon. It's the same one that Dan Pasco mentioned in This Comment. Hope this helps!