OK, here comes the essay...
IME, the only way to ensure you have well fitting bras is to learn to fit yourself. It's not difficult, just common sense and a tape measure. I can fit others by eye, no problem, but it's impossible to do it to yourself without measuring. Sure, Bravissimo and most independent shops are capable of fitting properly but that ties you to their prices too, which is a real PITA.
There's nowt wrong with M&S bras, as long as you don't let M&S fit you for them.
So, here's how.
Measure under the bust, no adding no subtracting, if it's not an even number then round down in the first instance. Lets say the measurement is 35 - that gives you a starting band size of 34.
Now measure over the fullest part of your breasts, if they don't stand up on their own (mine sure as hell don't), do it wearing your best fitting, non-minimizing bra.
The difference between the two measurements gives the cup size. 1 inch equals 1 cup size. So, say the band measurement was 34 and the nork measurement 40, that gives a starting size of 34E. You can work from there.
Now, bra sizing, like clothing sizes vary massively between makes and models. It's no good grabbing any old 34E and assuming it'll be right. This is were the fitting comes in, I'll probably make it sound complicated, but it's not. Really it isn't.
Bravissimo have good info on how to see if a bra is fitting right, here. They miss out some vital info though. They say throw away the tape measure, I don't really agree with that, you shouldn't take your measured size as gospel, it's a starting size IMO, you have to start somewhere after all. I measure a 38B, I need a 32E.
The same sized wire (or cup base for non-underwires) is used in many different bras, it's the same wire in a 42A, 40B, 38C, 36DD, 34E, 32F and 30G. If the brand in question has odd sizes like no DD or FF the one inch = 1 cup size rule still applies, count up from A (AA is band and breast measurement the same). M&S will tend to put you in, say, a 38C when they should have given a 32F, even if they have the right size in stock. idiots. If you need a cup size that's not in their range they'll just keep upping the back size until they get a cup that more or less fits.
So, back to fitting yourself. The band should tight, that's what should take the weight of you norks, NOT the shoulder straps. That's the most important thing. If you slip the shoulder straps off when you're wearing a well filling underwired bra your breasts should stay more or less where they were, even if you jump. The band of a well fitting bra might feel uncomfortable at first if your used to wearing a band that way too big and letting your shoulders take the strain. It's worth getting used to.
When trying bras grab your starting size, say 34E, and one size up and down, in this case a 36DD and a 32F. Chances are, if the model works for you one of them will fit, if not go for a different size based on what's wrong with the fit. Buying a bra that's technically the wrong size (based on your starting measurement) is often necessary, it depends on the cut and model, some cups are skipily cut, others too generous.
Always try a bra with the hooks on the loosest setting so you can tighten it as the band stretches with use, on new bra the difference between the band on the loosest and tightest settings is 1 band size. Trying a new 34E on the tightest setting is the same as trying a 36DD on the loosest, just try the 36DD.
Fitting yourself is a learning process, if you don't know how a well fitting bra feels then you can't really fit yourself. So, pay attention when you're fitted in a decent shop, take the above into account and you'll never be stuck in badly fitted or unnecessarily expensive bras again.
Not all models work on all breasts, micropore tape can sort flop out for an outfit where plunge bra is essential but it's not an option for every day.