DataTableをdt, DataRowをdrとして、以下のようなことを行っているのでしょうか?
VB.Net
1dt.Rows.Add(dr)
2dr = Nothing
もしこの通りであるのならば、drという変数自体はNothingにはなっていますが、(DataTable)dtに追加した行データ(Nothing前にdrが指示していたデータ)はそのまま残っています。
「dr = Nothing」を行うことにより、現在のdr変数が指し示すアドレスとdt.Rows.Add(dr)で(DataTable)dtに追加したDataRowが指し示すアドレスが同じではなくなっています(つまり別物)。
ただし、「dr = Nothing」とするのではなく、dr変数が指し示すデータの中身を変更すると、(DataTable)dtに追加したDataRowの中身も変わります。
これらをより理解するためには、DataRowのような参照型変数がどのようなものかを理解することが必要です。
◆値型と参照型
https://msdn.microsoft.com/ja-jp/library/cc406735.aspx
そもそも、DataTable内のDataRowはNothingにすることもできなければ、NothingのDataRowを追加することもできません。
...と色々と書きましたが、質問の意図に合っていますでしょうか?