I've had a 20D for 4 years and about 40K shots and just picked up an XSi this summer. My take is that the 40D vs. XSi question boils down to your expected application:
If you shoot action sports and thus need a quick frame rate and perhaps a bit better durability, the 40D is for you. Similarly, if you have big hands then the 40D will likely feel better to you. Indeed for me the small body and the fact that my pinky slips off the bottom of the grip is the biggest negative to the XSi. The 40D, like my old 20D, fits my hands much better.
That said though, the XSi will provide marginally better image quality at marginally lower cost. Particularly for long telephoto shooters like me, the higher pixel density of the XSi is a significant benefit. The fact that if you hunt you can pick up an XSi body for under $600 helps too.
In short, I tend to judge the body largely by the sensor and I believe the XSi to have a better sensor than the 40D.