O2 aren't great for discounts, especially MOD discounts. I was told they didn't do an MOD discount both by my local store and customer services when I rang. It took a call to customer retentions before someone would admit they did actually do an MOD discount - £75 credited to my account after 3 months.
However, I still managed to find a better deal on O2 by going through a well known high street third party supplier that beat O2 even with the discount. You can also get some very good deals through these money supermarket type websites. I can't imagine a scenario these days where going direct to O2 would actually be cheaper.