G. Mark’s Answer
There are basically two sets of criteria we used in my company. Our company had a philosophy that a member of technical staff should be able to handle any phase of any project, and that engineers should be "interchangeable". Now, that sounds a bit idealistic considering the wide range of expertise a person might need. However, the theory was that a person smart enough to get the job would be able to learn most anything. In that situation, what we looked for was first, general competence in engineering, and then some indication of industriousness. Extracurricular activities, whether the person had taken on jobs outside of school, groups they had joined, etc.. For an internship, this was important. Another thing was whether the person had shown earlier interest in the areas of engineering involved in the project the intern would be joining. This second criterion was more important for smaller companies that didn't have the luxury of choosing from a wide variety of projects for the intern to join. Since most companies are essentially hiring interns as potential long-term employees, a candidate who has shown dedication to the work they've done in the past will be at the top of the selection pool.