the best way of earning bitcoin is to work in a job and get paid in bitcoin (get your salary in form of bitcoin) or at least buy it each month on your payday.
but apart from that, for online earning i think the best way is getting paid to advertise for example on your website (banner ads)
That's a freelancing way and you can do it offer your job or service and yeah, get paid by bitcoin. But you must not afraid if you can't get
a client easily because the competition in the industry of freelancing is very tough but when they heard that you are using and accepting
bitcoin as payment maybe that would help to catch clients.