The .bashrc is a configuration file for the Bash , which every time you open a terminal is also loaded. In it you can abbreviations for commands (ie an alias ) Enter, you change here is the appearance of the prompt , or you can add additional scripts which facilitate a working with the Shell.
The bash_profile can change as well and fill with the same content as the bashrc, so this article almost 1 may: 1 for bash_profile be taken. The difference is that .bashrc runs each time you start an interactive shell as a terminal and the bash_profile only when you start a login shell.
If one wants to perform something once when a login shell is the bash_profile right place. Will you, that changes every time you start a terminal or a console be executed is the bashrc right place.