One easy way for me to answer this would be to tell you to simply do the exercise, so you can find out on your own. As in, DO the thing, and you'll find out what is better - or, more importantly, what works better for you. And that would be a perfectly legitimate answer - actually DOING the exercises yourself, and figuring out what works best will actually give you far more insightful answers that I (or anyone else) ever could.
I talk more about doing what works best for you in Fast and Furious Fitness, but for today, I'll delve into the topic myself and share MY feelings with you. And if I were asked this question, my answer would be a combination of "to each his own" and "both have their place".
Now, why do I feel this way?
First, training correctly rarely falls into the "black and white category", where everything is either RIGHT, or WRONG. No, that's not it - much like life, training questions, complications and everything associated with it is a "grey area", in that one usually has to find a middle path (while keeping certain basics in mind) - there is no absolute RIGHT or WRONG.
Second, both exercises are great for upper body development. Both develop a deep, powerful chest, a strong upper back - and also develop the shoulder muscles in their entirety. Both require very little equipment (pushups require NONE), and both can be used to craft together workouts that will have you huffing and puffing in no time flat.
But, both have their unique benefits. Pushups can give you far more of a cardiovascular workout than dips do, and involve the legs and lower back as well - as opposed to dips, which mostly use the upper body musculature. Dips, on the other hand are much harder to do correctly for most people, and can be used to get an excellent strength workout, while also getting cardiovascular benefits. Pushups have far more variations than dips do (that I know of), but modify the regular bodyweight dip a little, and you have a whole new exercise that will tax you far more than most pushup variations will.
And both have their place as well - those with shoulder issues may want to avoid dips and start off with pushups. Those who are already at a certain level of strength and fitness may want to start off with an advanced variation of the dip, and concentrate more on that. As I said - DO the exercise, and you'll find out.
So in closing - both are excellent exercises that have their own place, and their own benefits. Do the exercise, find out what works best for you, and thats pretty much all that you need to do (and that little bit applies to ALL of your training as well).
Long answer to a pretty short question, but that's MY take on it. Write in, and let me know YOUR take on it!
Best regards,
Rahul
PS: You can read more on pushups and dips HERE.
PS#2: For even greater detail, Fast and Furious Fitness is what you need to be reading.