Basically what you are doing here is a month, adding '/ 01' and then adding a year. Select it as a string to handle the addition, and then produce it as a DateTime.
So it's a little more important than doing some math, but I'm reading this.
DECLARE @firstOfMonth DATETIME SET @firstOfMonth = CAST(CAST(DATEPART(mm, GetDate()) as varchar) + '/01/' + cast(DATEPART(yyyy, Getdate()) as varchar) as datetime) WHERE DateToCheck BETWEEN @firstOfMonth and GetDate()
source share