Though I am definitely not an expert on the subject, I find elementary differential geometry fascinating and I love to teach it. Whenever I do, however, I find I have to make up my mind on a very basic question. Modern differential geometry is built upon a very elaborate theoretical framework (from differential forms all the way to connections and cohomology) and a correspondingly elaborate notation. It seems necessary to avoid most of this theoretical baggage in an undergraduate course. At the same time, one should try to teach a course that will prepare students for future courses, that includes some points of contact that can help students deal with the heavier notation they may meet in future courses.
When I taught the course this Fall, I used Andrew Pressley's newish book, Elementary Differential Geometry. Pressley takes the simplest route with respect to all the technical setup: avoid all of it. Instead of covariant derivatives, use derivatives with respect to local coordinates. Use moving frames without mentioning connections. Mention the Christoffel symbols very quickly, but don't do very much with them. For the most part, it works.
One place where this approach runs into problems is with respect to the Weingarten operator (aka the shape operator). There's no simple way to define this in Pressley's setup, so it ends up appearing only after quite a lot of buildup, and basically as a product of two matrices that just happens to include a lot of information. I felt it would have been better to actually introduce the covariant derivative and define the Weingarten operator properly. (And that's what I did in class.) The other problem with this section is the strangely uneven use of linear algebra. Pressley uses matrices and ends up appealing to a big theorem (self-adjoint operators have real eigenvalues), but he seems to avoid using linear transformations directly. Since my students did know what linear transformations were, I used that language; on the other hand, since they had never seen the big theorem, I presented an easy proof.
The section on geodesics has essentially nothing on parallel transport, which is a pity. On the other hand, the book does include several versions of the Gauss-Bonnett theorem, allowing the professor to end the course with a bang. (This may require some judicious skipping of earlier sections.) All in all, I was quite happy with the book.
Fernando Q. Gouvêa is the author of several books, including, most recently, Math through the Ages, written in collaboration with William Berlinghoff.