Conservative GC is not reference counting. Conservative GC can deal with cycles but reference counting cannot. If you are interested you can read this paper:
https://hboehm.info/spe_gc_paper/preprint.pdf
Wilson wrote a very good survey paper on uniprocessor GC techniques. It is a good introduction to Garbage collection.
https://www.cs.cmu.edu/~fp/courses/15411-f07/misc/gc-survey.pdf
I only used golang for a small project and I don't have a very strong opinion. I think there is a bit too much boiler plate code and the lack of generic (like templates in C++) makes it a bit less friendly to me.