Carefully line an 8" square baking pan with parchment paper. Fold the corners carefully and tape the sides if necessary. Don't worry, it doesn't get baked!
Add sugar, butter and evaporated milk to a heavy 2 quart saucepan. On high heat, stir mixture and bring to a full rolling boil. Reduce heat to medium-low, and continue boiling and stirring for 5 minutes, making sure to continuously scrape down the sides. Remove from heat, and allow to cool for 2 minutes. Add peanut butter, and stir until completely melted and incorporated. Add vanilla and marshmallows, and stir until completely melted and incorporated. There should be no visible streaks of peanut butter or marshmallow.
Pour mixture into parchment lined baking pan, tilting or shaking for uniform thickness. While mixture is still warm, press M&Ms into the top of the fudge. I use an even grid pattern, typically 7 across and 7 down. Keep in mind that it's much easier to cut around M&Ms than through them. Press deeply enough to avoid popping out later. If M&Ms start to crack after being pressed into the fudge, the mixture is too hot. In that case, wait a few minutes, and try again.
Refrigerate for at least 4 hours. Carefully lift out the fudge by grabbing opposite sides of the parchment paper. Cut even rows between M&Ms, cleaning your knife in hot water between cuts, or when buildup causes messy cutting.
Assemble a second set of ingredients, and get ready to make another batch because these will be gone before you know it!