There are three mistakes in TF2's design: sentry knockback, which removes player control; critical hits, which can cause instant death; and the lack of any tangible benefit for attacking.
The first two only happen on occasions, but the lack of encouragement for offence seriously harms almost every game I play (in Europe). Of course, there is encouragement, including the crit algorithm above which I didn't know about before, but for the vast majority of players I encounter it isn't enough and they do not attack.
My rule is that if I spawn, push past the battle lines with ease, but die alone in or on a vital objective area more than twice in a row I either try to join the other team or disconnect. I often bounce off five or six servers in a row while following it, because of the sheer number of people who are afraid of attacking - even on offence/defence maps with one- or two-second respawn timers for the attacking team!
I can recount many tales of the entire red team standing around behind a 1way gate, or having to fend off the entire enemy team as an engineer because nobody else is even trying to, or spectating from above and watching a lone pyro cause a knot of seven or eight combat classes to retreat, or people standing around watching a point being captured because they might have to expose themselves to danger to get it back, or, or, or...
It desperately needs an idiot-proof "momentum meter" to give these poor sods some indication of what they're doing wrong, and rewards for correcting themselves.