A foreign group is a group not read by the usual (or default) means. It could be, for instance, a group from a different NNTP server, it could be a virtual group, or it could be your own personal mail group.
A foreign group (or any group, really) is specified by a name and
a select method. To take the latter first, a select method is a
list where the first element says what back end to use (e.g.,
nnml) and the second element is the server
name. There may be additional elements in the select method, where the
value may have special meaning for the back end in question.
One could say that a select method defines a virtual server—so we do just that (see Server Buffer).
The name of the group is the name the back end will recognize the group as.
For instance, the group ‘soc.motss’ on the NNTP server
‘some.where.edu’ will have the name ‘soc.motss’ and select
(nntp "some.where.edu"). Gnus will call this group
‘nntp+some.where.edu:soc.motss’, even though the
back end just knows this group as ‘soc.motss’.
The different methods all have their peculiarities, of course.