Hot bluing is faster, but doesn't stick as well and requires a fair layout of cash and equipment. It also involves strong caustic salts, so it's not something I'd experiment with unless I had adult supervision. It also needs to be watched for the duration of the process. Properly set up, it can be completed in a couple of hours.
Rust bluing is (generally) slower but holds up better. It can be set up on a fairly small scale and would be comparatively cheap next to hot bluing, but the workpiece needs to be carded with steel wool after every coat, which isn't bad if you're doing something like a Remington 870 but can become frustrating if your piece has any complex shapes or hard to reach places. You'll need a hot-box for the process. On the upside, you can set it cooking and walk away for a few hours. You'll also need multiple coats to get a decent finish. Expect to be at it for a few days.
Cold blue is ****. Birchwood Casey is the worst offender, but in my experience so far most 'quick fix' finishes are a good way to convert pocket money into frustration. Blue Wonder seems to be the best of the lot but...still a form of cold blue. It also won't fool anybody as a professional finish.
Whatever you do, metal prep is king.
Relative to other finishes, the major advantage of bluing is that it's actually fairly simple to do and relatively cheap compared to other processes. Word of mouth says that the most durable finish is paint over parkerizing. Parkerizing will work like a charm provided it's properly treated. Plating would likely be the most airtight of finishes, but it's expensive and requires all manner of nasty chemicals, and it's uncommon to find a gunsmith that offers it as a service.
If you mean to try any of this yourself, practice on scrap first.