Are you using a profiler to find the bottlenecks? There's usually little benefit from trying to optimize code unless you know exactly what is slowing things down.

If you use a performance profiler...