An this is slightly faster again, by avoiding the string comparison ( = 'Friday'):
SELECT
YEAR(DATEADD(mm,N-1,'17530113')),
COUNT(*)
FROM
dbo.Tally
WHERE
N < DATEDIFF(mm,'17530113','99990101')
AND
(DATEPART(dw,DATEADD(mm,N-1,'17530113')) + @@DATEFIRST) % 7 = 6
GROUP BY
YEAR(DATEADD(mm,N-1,'17530113'))
HAVING
count(*) = 3
ORDER BY
YEAR(DATEADD(mm,N-1,'17530113'))