I always build my applications with the philosophy of progressive enhancement.
In your case, I would design your site so that the site works for users without javascript and HTML5 enabled. This will result in a full reload of the whole page everytime the user navigates, but this is fine. This represents the normal 'state-of-flow' of the web and users should be familiar with it.
If javascript or HTML5 is avaliable, then you can start looking at using AJAX or whatever you are using to reload only certain portions of the page.
You can use something like YUI History, history.js and loads of other state management scripts to maintain state across your application.
In HTML4 browsers, you would see something like http://site.com/#/page/to/whatever and in HTML5 browsers, you will see something like http://site.com/page/to/whatever, but it does not refresh the whole page.
So the conclusion:
Yes, only changing parts of the site is good and more responsive, however you should take into account users without javascript or HTML5 (screen readers, search engines, users with those features disabled, etc).
Use progressive enhancement. Provide something that will work without javascript or HTML5 (full page reloads), then use your favorite javascript frameworks or HTML5, to build ontop and update only page sections that require updating.