I think it depends on the efficiency of the market. If there's a big overround on both sides of the market then that limits the profits from laying.
Imagine a scenario where an event has two outcomes with 50% probability. The bookies price it up at say 1.9 for both outcomes.
You put a £100 free bet down on outcome A at 1.9 odds. If it comes in, you get 90-0 = £90 profit, if it doesn't you get 0-0 = £0 profit. So the average profit from not laying is (90+0)/2 = £45.
Now consider you lay it. You put £47.37 down on outcome B at 1.9 odds. If it comes in you get 90-47.37 = £42.63 profit. If it is outcome A, you get 90-47.37 = £42.63 profit. So the average profit from laying is (42.63+42.63)/2 = £42.63
Now of course in the modern internet market with better information around prices you would probably get better than 1.9 on each side of the market, but I chose a slightly exaggerated example for ease of explanation. Realistically I would look for much higher odds on the free bet also due to the impact of losing your stake. In some circumstances you might actually identify genuine arbitrage scenarios where the odds are balanced in your favour rendering the above comparison irrelevant but the point I'm making is that laying to guarantee profit shouldn't be more profitable in an inefficient market (assuming you have sufficient bankroll to sustain losses).