<p>In .NET (VB), how can I take all of the items in one collection, and add them to a second collection (without losing pre-existing items in the second collection)? I'm looking for something a little more efficient than this:</p>

<pre><code>For Each item As Host In hostCollection1
    hostCollection2.Add(item)
Next
</code></pre>

<p>My collections are generic collections, inherited from the base class -- Collection(Of )</p>

I know you're asking for VB, but in C# you can just use the constructor of the collection to initialize it with any IEnumerable.  For example:
```
```
List<string> list1 = new List<string>();
list1.Add("Hello");
List<string> list2 = new List<string>(list1);
```
```
Perhaps the same kind of thing exists in VB.