Why doesn't Minecraft run smoothly?

My Laptop has 6 Gb of RAM, an Intel Core i5-3317U, an NVIDIA Geforce GT 635M 2Gb graphics Card and Windows 64bit. I also have Java 8 Update 45 Installed. Minecraft lags extremely bad on both Servers and offline, both modded and not modded. I even turned to the lowest Settings, but now Whenever I break a block, it reappears and I have to break it again.

How many background processes are running while playing Minecraft? These processes can take up a considerable amount of RAM. If it's not this, Minecraft is not being assigned enough RAM. While running Minecraft, there's a set limit of RAM given to work with, it doesn't exceed that because it can't, it doesn't just use as much RAM as it can.
The following is from the MC forums:

In the section "Profile Selection" click on "Edit Profile"
Under "Java Settings (Advanced), activate "JVM Arguments" and add into the text area this argument:
'-Xmx2048M -Xms2048M'

"-Xmx2048M -Xms2048M" makes Minecraft launch with a reserve of 2048MB of RAM, or 2GB. This number can be changed(Xms can't be more than Xmx) to 3072 for 3GB, and in increments of 1024 for an extra GB.
If the default there's less than 1024 (1GB of RAM, what Minecraft should run fine at) this is what is causing the problem.

This is explained in further detail in the source link

You have good spec.