If you need to change the urls (always a dicey situation, IMO) then a 301 redireect is the recommended approach, as a first step. Changing all the internal links would be a second step and then writing to major backlinking sites to let them know wbout the change would be a third.
If you have verifed any of those subdomains through Webmaster Tools, make your changes in there, too.
There's been a lot of discussion about this over the years. In the final analysis "better" may depend on your precise ranking goals and what kind of interlinking is in place between the current subdomain set-up. For the past two years, Google has been treating these two approaches much more similarly than they did before fall of 2008.
As a tip for research, a Site Search [webmasterworld.com] for more threads on the topic will get better results using either the word "subdirectory" or "directory" rather than "subfolder".