Ça dépend vraiment du contexte, pour les deux points : Au cœur d'un bout de code php, la concaténation restera plus lisible, mais au milieu d'un code html, ajouter un code php minimal sera toujours plus clair. De même que la concaténation de plusieurs variables s'avère gourmand en ressources aussi
Et même sur le principe ça reste assez con, à mon sens, d'ouvrir une balise php au milieu de html pour faire un echo d'une string, concaténer une variable, et concaténer une autre string, plutôt que de simplement ouvrir une balise php au milieu du html pour faire un écho de la variable directement ; d'autant que le html n'aura pas besoin d'être généré via php du coup (même si le fait d'utiliser un single quote permet de ne pas avoir à interpréter le code, sur le principe ça reste aussi utile que de faire une fonction qui renvoie true si une variable est définie).
En fonction du contexte, donc.