I wouldn't drop in unannounced. Depending on the company, you'll get as far as the receptionist, who may or may not pass on your information and may or may not pass it to the right person.
At worst, if you do get through to any engineers and/or managers, you'll be quickly dismissed and forgotten about if they're not actively looking for interns.
My suggestion would be:
- Set up a github account (or bitbucket, w/e) and post your work there (if you can).
- Get involved with projects in your domain of interest and contribute to them via patches
- Add your github link to your resume. If your work is of even decent quality, this will set you apart from the rest of the pack.
- Search online for companies looking for interns. Apply online. Follow up with a phone call if you don't hear back after a week or so.
- Scour meetup.com and similar sites to find C# (or whatever else interests you) events in your area. This is where you do your networking. Bring business cards. Don't have some? Get a few printed up.. You won't be passing out hundreds of them at these meetups.
- If you're interested in companies with OS projects, contribute to them. Get on their IRC channels and be active. For example, if you're interested in Adobe, get involved with Phonegap or Flex (even though its future is a little in doubt). If you're interested in Mozilla, get your hands dirty with any one of their multiple projects.
Having an account on github with work can help show that you know (at least the basics of) what you're doing. It also shows that you're familiar with the basics of source control, which is pretty much a requirement in any team setting that isn't horrible.
If you're contributing to other projects, you demonstrate the ability to 1) read/debug someone else's code and 2) work in a team environment. This will set you apart from the rest of the pack by far (you'll also learn a ton of new things working with other people's code). You may also run into professionals in your area working on OS projects.
If you get involved with meetup groups, you become a face to a name/handle to industry professionals. If you don't just sit in the corner twiddling your thumbs, people will take notice. Employers will also sometimes attend meetups in search of interns or full time employees.
Of course, just dropping by companies with work demos and resumes can't hurt, but you can definitely make better use of that time.