You’re sure they’re sending actual SMS texts rather than something like WhatsApp or iMessage? 'Cause this should work; assuming all phones have texting plans, aren’t in restrictive countries like China, and have no text blocks in place–SMS is platform agnostic.
If you formerly owned an iPhone and then switched to a non-iPhone, it can cause problems with text message delivery from other iPhones. iPhones still assume that you’re preferred delivery mechanism is iMessage which gets sent into a void. You have to deregister your Apple so other iPhones know to send using SMS which will actually reach your phone.
This is most likely the same iMessage bug that has been annoying me. iMessage will attempt to deliver a message to someone using whatever it’s internal internet messaging system is, and it can fail to deliver a message silently. You have to hold your finger over the message and choose “send as SMS”. Very annoying.
That would only apply to people who have iMessage accounts (otherwise it has to send SMS), and in any case wouldn’t fail in both directions. So that’s not what’s happening here.
I’ve never known iMessage to silently drop a message, but if it’s not working for you, go to Settings->General->Messages and turn off the “iMessage” switch. That’ll make it always use SMS (and you’ll lose the free messaging to other iOS users unless you’ve got an unlimited texting plan).
Anyone switch providers recently? When I switched here from Telus to Rogers, I had one friend whose text messages would take days to arrive. In my case, calling Rogers resulted in them blaming Telus, and I just had to wait a month or so for that particular issue to go away.