Much more information can be found here.
However, bear in mind:
In SQL Server, the prepare/execute
model has no significant performance
advantage over direct execution,
because of the way SQL Server reuses
execution plans. SQL Server has
efficient algorithms for matching
current SQL statements with execution
plans that are generated for prior
executions of the same SQL statement.
If an application executes a SQL
statement with parameter markers
multiple times, SQL Server will reuse
the execution plan from the first
execution for the second and
subsequent executions (unless the plan
ages from the procedure cache). The
prepare/execute model still has these
benefits:
Finding an execution plan by an
identifying handle is more efficient
than the algorithms used to match an
SQL statement to existing execution
plans.
The application can control when the
execution plan is created and when it
is reused.
The prepare/execute model is portable
to other databases, including earlier
versions of SQL Server.