Wow, this is the BEST thread about lists I've ever read! :D
So many good ideas here!
My 2 cents: I tend to use ArrayList. Their 'sense' of order appeases me.
I'd like to add, for the OP: Whichever you use (Bag, ArrayList, etc.), you probably wont see a noticable difference, until you're working with the big boys on some voluminous project. But I must admit I share your enthusiasm for optimizing ;)
Hehe. Me too. I use ArrayList and when I'm done, I profile to see what my bottlenecks are. I've never had a container class be the bottle neck so I've never ended up optimising it.
But.... I still love to read about people's optimising efforts. It satisfies the inner geek :o)