A good resource is http://plone.org/products/dexterity/documentation/manual/five.grok/referencemanual-all-pages . Plone is probably the biggest piece of software that uses zope3, so the fact that plone uses grok's way of configuring zope3 counts for something.
I'd definitively recommend going one step further and to use grok. The underlying functionality (the so-called "zope component architecture") is the same, is is basically only the way it is configured that is different.
With grok, the configuration happens in your python files instead of in xml (.zcml) files. Much more comfortable, especially when you need to figure out what happens where.
Important to keep in mind: you can mix them up virtually at will. It is "just" the configuration (and some defaults) that are different. So an event handler registered by using grok will react just fine to an event that is configured with pure zope3 .zcml files!