While the easy and correct answer to this question is a categorical “NO”, I have to confess that in my case, working for free was the takeoff of my career.
It was the first year after the university and I just had arrived to Bratislava, when a friend that was a volunteer at the Comenius University in Bratislava came to me and asked if I could collaborate with them organizing the Spanish Language Days. They needed a poster and a program. I had plenty of time and I needed to extend my portfolio, so I said yes. I had a tough moment trying to please all the institutions involved, and the result wasn’t perfect, but I managed.
Some months after, the same guy asked me to help him with the posters and programs for the Italian and French Language Days. But this time, I was a bit more busy and I didn’t feel like going over all the experience of arguing with all the institutions again, so I agreed to do it only if I could do the design I wanted. Surprisingly (or maybe not, is hard to find a designer who works for free), he agreed. The result were two designs of which I was proud.
After a while, I received a call from the French Embassy in Bratislava. They were looking for a designer for the graphic materials of the French Day, and they were satisfied with my previous work, so they contacted me. And this time, the work was paid.
Thanks to that, we established a working relationship that ended only 2 years after, when I decided to stop freelancing and get a job as an employee.
Coming back to the question that heads this post, working for free may help you sometimes, but you should do it only if there is a reason for it regardless of the opportunities that may come. In my case, I never expected to get a client out of it and they never try to fool me by telling me that it was a great opportunity for me to show my work. They asked for help and I decided to give it while having something to show in my portfolio.
And of course, if you are already an established designer, working for free is not a good idea.