hard to network over time once you're in your career. Just go to lunch with people once a week, call them up a few times a year when you're driving. It's not hard to stay in touch, but most people are too lazy to do it.
My OP talked about being in college and spending more time. You make time for what you think is important. If you can find an "in" into the company and get to know people and be persistent, you can get your foot in the door. Having gone through undergrad recruiting and MBA full-time recruiting, I know this works. Knowing someone at the company certainly gives you a way better chance than blindly applying on LinkedIn or Indeed.
Also, to your point about offering to work for free, most companies don't want someone to come work for free for a few months. They'd much rather simply hire a really good candidate that they know will be a good fit for the long term. It would actually be more expensive for them to bring someone on for free who they might not want to hire and ultimately have to let go, than to simply bring the right candidate on from the start that they pay. That's where networking gives you such a leg up.
When an opening occurs, it's easy to go, "Let's call Steve. He was awesome and expressed interest a few months back." Lots of times job openings aren't even posted because they're filled from someone's network.