Instead of giving a nice & neatly formatted pros & cons table where all the pros have a corresponding cons, let’s just discuss the major aspects: security & complexity.
Basically, in general, OAuth is more secure but more complex for both clients (i.e. consumer) and services.
Why is OAuth more secure? Relying parties never see credentials & secrets in an OAuth authentication scheme. They see a token. Token are revoked after a while ; often minutes, maximum a few hours.
Read on for more. My preference is OAuth, but it’s not always trivial to set up.