Default maximum recursion is 100. This can be altered by setting the maxrecursion as an option. If the recursion has gone past the maximum then you will receive the following error:
The statement terminated. The maximum recursion 100 has been exhausted before statement completion.
Here is an example with maximum recursion set to 1000.
;with cte(N) as
select 1 as N
select cte.N + 1
where cte.N <1000
select * from cte
option (maxrecursion 1000)