Yes I agree playing with Visibility, resolved this issue of memory consumption as per your first answer.
and also thanks for this detailed explanation on memory consumption.

Once after changing my code to play with visibility I am facing one issue that is previously made visible false window getting settled backside(beyond some other opened application window) after a first launch, and it will not come on top if i make that window as visible true. For Every switch it will be settled backside in the screen , beyond some other application.
I tried changing it to "show" and "hide" by replacing visible true or false. and also I have tried using raise() and activatewindow() even after that i am facing the same issue.
Requesting to please help me out how to fix this issue.