Om den är snabbare allra första gången så vet jag inte.
Annars:
Because the Transact-SQL statement itself remains constant and only the parameter values change, the Microsoft® SQL Server™ query optimizer is likely to reuse the execution plan it generates for the first execution.
EXEC sp_executesql N'SELECT * FROM tblG_Site WHERE SiteId = @i0', N'@i0 int', 1 WITH RECOMPILE
Det tvingar Query optimizer:n att skapa en ny execution plan varje gång och således borde de två metoderna ta lika lång tid om inte sp_executesql tar längre tid t.o.m.