I tend to buy a good quality shirt from a place like M&S say, and from there I take it straight to the tailors to have it fitted to my body. The tailor charges about £15, while M&S charge about £5-£20.
My problem is that years of exercise have given me a slim waist and thick shoulders. If I go for a shirt that fits my shoulders/neck, then the waist is HUGE. If I go for a shirt that fits my waist, then my shoulders cant fit into the shirt. T-shirts: exactly the same problem.
The problem, as Jonny69 said, is that most blokes in this country are fat with beer bellies. The mass market shirt sellers have picked up on this and decided to sell the shirts that fit the majority (ie. fat men). If you have a beer belly and are fat all over (thick neck/shoulders and big waist), then most shirts will fit. If you are thin all over, then again, you are in luck as you can get away with a small shirt (thin waist and thin neck/shoulders). If however, you have big shoulders and a thin waist (like me) then you are in trouble.
Its strange because the media puts so much pressure on women to stay in shape and make clothes accordingly (most clothes in the high st are geared towards the slimmer woman; some ranges dont even include bigger sizes for women), I dont understand why they cant do the same for men.