Difference Between SP with BEGIN/END and without BEGIN/END I have found some SP(stored procedure) written as,

CREATE PROCEDURE [dbo].[XXX]
(
   -- Parameters
)
BEGIN

--- Actual Work

END


and some as

CREATE PROCEDURE [dbo].[XXX]
(
   -- Parameters
)


--- Actual Work


What makes it difference?
There is no difference. That is, it's optional.

What matters is the "end of the batch" which is denoted in SQL Server Management Studio by GO