Die vhosts (sprich httpd.conf) nutzt du normalerweise um deine Domains
allgemein zu konfigurieren - d.h. welche Module geladen werden (PHP, FCGI, etc.), welche Domains auf welche Verzeichnisse gemappt werden, Berechtigungen etc. Das ist also der Teil, der normalerweise vom Serveradmin konfiguriert wird (und bei allen Shared Hosting-Lösungen vom Hoster verwaltet wird)
Welche Optionen über die .htaccess angepasst werden können wird auch in der httpd.conf festgelegt.
In .htaccess werden üblicherweise nur Optionen eingestellt, die für die jeweilige Webanwendung spezifisch sind. Oft sind das redirect-Regeln um schöner lesbare URLs in korrekter Form an z.B. PHP weiterzugeben, manchmal auch Zugriffsberechtigungen für bestimmte Verzeichnisse.
Für die Optionen selbst gibt es eine schöne Anleitung auf der Apache-Webseite, die Aufteilung von vhosts / httpd.conf ist aber spezifisch zur jeweiligen Distro (in Gentoo hat man etwa /etc/apache2/modules.d/* und /etc/apache2/vhosts.d/*, bei 'nem Standard-Apache nur httpd.conf). Da bleibt nur die Anleitung der jeweiligen Distro auszugraben oder "learning by example"