I tried moneygram via bitinstant and had a horrible experience. It just so happened to be administered by zip zap and the process was painful and complicated. I then tried sending a post office money order to CampBx and it went through in a week or so. CampBx is great for USD => BTC.
If you are exchanging with someone, just do it in person if at all possible.
I used BitInstant today and went through ZipZap as well. At first I kept getting an error when I tried to submit as a one time thing but then I registered and it went right through. The email confirmation took about 20 minutes to come through but after that it was super fast. I paid the cashier at CVS and within a couple minutes got the Bitinstant transaction receipt. I'd say that's pretty instant!
I did not think it overly complex but I don't know where you were paying for it. At CVS you just pick up the red phone and its all automated, you punch in the numbers on the keypad, and all the information you need is on the email they sent to you along with the instructions on how to do it.