hi jacky pham.
There are a number of different approaches.
The simplest way would be to animate the heart using the scale tool and maybe rotation and transformation. That would not result in a very realistic heart beat though.
If you need a anatomicaly more natural animation, one way would indeed be using blendshapes.
Make several copies of the original heart and remodel them to make different morph targets. For example in one copy you could inflate the right ventricle and in another copy the left one. Keep in mind that you must not change the number of faces and vertices of the targets.
Using the blendshape deformer you can then animate the heart.
You could also try the sculpt deformer, but I find it to be hard to control sometimes.
There are probably a hundred more ways to do this! Anyway you should try to find some good reference before you start.
Would be nice to see the result!
cheers gl.