A design pattern is a technique that comes up repeatedly in software. It's a reusable solution to the same problem. For example, it is common to want just one instance of a class in your application. Maybe it has a counter in it so you want everybody to go through that class. The solution is the Singleton pattern.
Head First Design Patterns is a good first book on the topic. The table of contents is online so you can see what you will learn.