A smart client is nothing but, the application will be installed on the client and whenever the application launches, downloads the latest and also is able to handle online as well as offline with the help of a local DB.
There are some restrictions for the web application so that they can not get round in the browser because of security. We can't access the system, can't write the user's disk except cookies and HTML 5 offline storage. Also can't access devices connected to the user machine. By using a Silverlight Out of Browser app or elevated trust these restrictions can be lifted.
There is no guarantee on HTML5/web applications about rendering over different browsers. So, if you want a pixel perfect app, then Silverlight would be the better option.