I think you're probably a victim of the EU drive cycle! As has been said, the "official" figures are very unrepresentative of "real" driving conditions. they are a combined figure or urban and open road driving. If you never get any open road driving, they'll be significantly worse. If your mate's BMW a petrol or diesel? If it's a petrol, I'd be a bit sceptical. If it's a diesel, then yes, I could see it returning that sort of figure.
My daughter's 1.2 shows about 42MPG on the trip computer, but it's actually nearer 40 to the gallon and she lives in a rural area and drives, well, erm, "like a girl", really!
A change of spark plugs won't ever do any harm. Also make sure your air filter has been changed in the last (say) 30,000 miles. If you spend lots of time in traffic idling, that's a real killer. As has been said, drive as if you were driving in socks (i.e. don't press any of the pedals too hard) and don't rev it - change up as soon as you can. Run your tyre pressures towards the higher end of the recommended range (even though you're not fully-laden). One of the best tips I was ever given for economy driving, is to imagine that the BRAKE pedal is the one that uses the fuel! Sounds completely counter-intuitive, I know, but it really works!