It really depends where you're from. Some countries have their own local exchanges which can make it a lot easier to purchase/sell.
Some alternatives to coinbase: Gemini.com, Localbitcoins.com, Kraken.com
Lets say I use gdax fore example. Is it best to deposit money into gdax and then purchase bitcoin, or should I make a direct bitcoin purchase from my bank account. Is one faster than the other?
I'm not 100% sure as Coinbase doesn't allow purchases from my country, but I think bank payments on Coinbase is the way to go. But personally I'd go with localbitcoins.com and look for a local seller, as I personally prefer paying in cash. To prevent possible bank/government-related shenanigans.