In .NET, you usually don't need to set a variable reference = Nothing ( null in C #). In the end, the garbage collector will clean up. The link itself will be destroyed when it goes beyond the scope (either when your method completes, or when the object of this class is completed.) Note that this does not mean that the object destroyed, link to it. The object will continue to be destroyed non-deterministically by the collector.
However, setting your link = Nothing will give .NET a hint that the object may be garbage and does not necessarily harm anyone - other than code clutter. If you left it there, I would recommend removing it from the Try block; it is already in the Finally block and therefore will always be called. (Apart from some catastrophic exceptions, but in those cases it will not be called in the Try block!)
Finally, I have to admit that I agree with Greg: your code will be cleaner without it. The runtime hint you made with the link is good, but certainly not critical. Honestly, if I saw this in a code review, I would probably rewrite it like this:
Dim a as Object Dim i as Integer = 0 For i=1 to 5 a = new Object() 'Do stuff Next
source share