In a large bowl, cream the butter, brown sugar, and sugar for 1-2 minutes until fluffy. Add vanilla and egg and mix well.
In another bowl whisk together flour, vanilla pudding mix, baking soda, and salt.
Gradually mix dry ingredients into wet ingredients until incorporated. Stir in most of the chocolate chips. (Reserve a few chocolate chips and the M&Ms for later) Cover and chill for at least one hour.
Preheat oven to 350. Very lightly grease a baking sheet. (I lightly mist it with cooking spray, then wipe it off with a paper towel) Roll about 3 tablespoons of cookie dough into a ball (Should be about the size of a golf ball) and place on prepared baking sheet. Gently press remaining chocolate chips and the M&Ms into the cookie dough balls (this makes sure you can see the chips and the M&Ms after they bake!).
Bake for 9-12 minutes until cookies are set but still slightly underdone. Allow to cool for at least 10 minutes on the baking sheet. Transfer to a cooling rack to finish cooling completely. Store in airtight container at room temperature.