A lot of it can depend on the objects you are using. If you are using COM based components, you need to explicitly free the memory using Marshal.ReleaseCOMObject. If you are using .Net objects, many have a dispose method that can be called to clean up the objects.

Also, do you see the memory usage of your App continue to increase as you use it, with no signs of decreasing?

Posting some of your data access code may also help in pinning down the issue.