I buy both eth and btc from time to time and I've used numerous services for that aim. So far I stick to https://cryptonex.org platform.
There you can pay with your Visa or MasterCard in any currency; exchange for USD or EUR is made at your bank rate.
I like that it's very easy and safe to make purchases there and the fees are not that high, you know.