For real time, reliable two way messaging you'll either want to peer with the carriers you support (using SMPP) or use an aggregator. There are a lot of aggregator options and you'll want to shop around to get the best price.
Using SMPP I've seen round trip times as low as 10 seconds.
If you want media (pictures or video), you'll want an MM7 connection.
I'd link to wikipedia but I'm on a mobile phone, sorry.
You could go down the SMS/email gateway route, or use a company like Clickatell to send messages for you (though I don't have any personal experience with them). But seriously, http://www.google.com/search?&q=sms+site:news.ycombinato...
email to phonenumber@txt.att.net / messaging.sprintpcs.com / etc... once you receive the text, a reply will (should? works for most major carriers - att on my iphone tested) send the message back to the original email address.
getting your own dedicated short code is expensive and takes a while (~2-4 months).
i'm not familiar with the process, but in theory you can apply for a direct connection to EACH carrier (i think you need insane volume to even attempt this and even then approval is not probable).
after you get your dedicated short code, most people turn to aggregators that solve the volume problem for you (i.e. clickatell).
others bypass the dedicated short code route for cheaper / more immediate results with a shared short code (i.e. textmarks) -- accessible with a vanity keyword.
you can also try setting up your own SMS gateway w/an open-source like Kannal. add nokia phones for extra style & fun points as desired.
Using SMPP I've seen round trip times as low as 10 seconds.
If you want media (pictures or video), you'll want an MM7 connection.
I'd link to wikipedia but I'm on a mobile phone, sorry.