Yep, Like Money_Man says, the Geforce 6600GT by any make (though theres better and worse ones) will be good
and yeah, that'll be fine.
I don't think you'll get a 256mb version of that card.
As for it lasting a while. It will yes, because it runs games now at high settings, rather high res's so in the coming future, you'll just have to lower these a bit to carry on, so should run games for a good year or more
Plus because its Nvidia, it also supports Direct X-9c which has some extra features not being used in games yet, and so games will look good for a while too
Hope this helps