You do have the exact question open here:
http://www.experts-exchange.com/Programming/Languages/.NET/LINQ/Q_26339283.html
Why duplicate it?
I've provided my input, please check the original question. You can request this question to be closed and your points refunded.
Arun