In a large bowl, cream butter and sugar until light and fluffy, 5-7 minutes. Add eggs, 1 at a time, beating well after each addition. Beat in lemon zest and vanilla. Combine the flour, baking soda, baking powder and salt; add to creamed mixture alternately with sour cream, beating well after each addition (batter will be thick).
Fill greased or paper-lined muffin cups with 1/4 cup of batter. Bake at 350° for 25-30 minutes or until a toothpick inserted in the center comes out clean. Cool for 10 minutes before removing from pans to wire racks to cool completely.
For frosting, cream butter and confectioners' sugar in a small bowl until light and fluffy, 5-7 minutes. Add the lemon juice, vanilla, lemon zest and milk; beat until smooth. Frost cupcakes. If desired, sprinkle with additional lemon zest.