I have had a few inquiries from some undergraduate friends about applying for graduate school. I thought I would publish some advice here but also open up the comments to anyone who has further advice or competing views.
Many undergraduates are concerned about the fact that they don't have straight A's. Well, it's no big secret, but neither did I (at least for my entire program)! I did "okay" in first year but just scraped by in my second (by the skin of my teeth! Okay, teeth don't have skin, but you know what I mean). The good news is that biology programs normally only consider your last two years (or equivalent number of courses). You should always check with the program you're interested in, but many seem comparable. So if you're entering your third year and a little disappointed with your first two, you'll be just fine.
I also don't think straight A's necessarily make a good researcher. Does the ability to memorize thousands of facts make you a critical thinker? It might get you good grades but it won't help you design a relevant and interesting research project. This is not to say that all people with straight A's merely memorize facts (please, no angry comments!). All I am saying is that the person with the B+ average and the person with the A+ average may not be so different when it comes time for grad school. It all depends on personal characteristics that are at least partially independent of grades. Some important qualities that successful students possess are self motivation, competitiveness (healthy competitiveness!), and passion (not like a romance novel!).
Firstly, self motivation is important because no one is going to be there prodding you to finish your experiment. When your yearly committee meeting rolls around and you haven't made any progress, there will be no one to blame but yourself. You have to be good at setting goals and meeting them. I use two levels of goal setting. The first are long-term goals. For example, "I will submit paper A by January." The second are short-term goals. For example, "Today, I will write three paragraphs of paper A." Because I am self motivated I usually meet my goals (or at least come close).
Secondly, I want to be clear about what I mean by competitiveness. I define this as the desire to excel when your goals for excellence are set by the people around you. This means feeling motivated by how well others are doing and working hard to match their successes (or maybe to do a bit better!). I am only talking about hard work and not about immoral means of competing with others (purposely scooping their research, "bad mouthing" them, or sabotaging experiments). These are all unacceptable and place you into the category of ruthless rather than competitive.
I suspect there is a near linear relationship of healthy competitiveness with number of publications and number of scholarships. Publications and scholarships (in addition to experience and interesting research) are good determinants of future success (jobs, more scholarships) assuming they are of good quality. Of course, there may be exceptions to this "rule."
Finally, you have to be passionate about your research. If you are passionate you are most likely also self motivated and competitive. I think very positively about my research and am always generating new ideas. I wake up in the morning and immediately start thinking about science. But I don't want to be unrealistic. Every day will not be positive! Experiments fail and equipment breaks, but if it doesn't stop you from wanting to pursue research, then you're on the right track!
Part II will cover choosing a supervisor and a university.