TL;DR: yes.
In more detail, the Language Reference describes
how containment interacts with event broadcast and reception (the mechanism underlying resource notification and refreshing). In particular,
If Puppet changes (or refreshes) any resource in a class or defined
resource, that class or defined resource will send a refresh event to
any subscribed resources.
and
If a class or defined resource gets a refresh event, every resource it contains will also get a refresh event.
Those both apply to the example you presented.
One thing to watch out for, however, is that the event broadcasting produced by a declaration such as you presented may be more than you actually want. That is, there must not be any resources in Class['site::config'] from which you do not want to receive events, nor any in Class['site::service'] to which the events should not be directed.
John