All databases have limits - some are bigger than others. SQL2012 has limits: for example, it is limited to a maximum database size of only 524,272 terabytes. (
http://technet.microsoft.com/en-us/library/ms143432.aspx[
^] for the full list)
I suspect your "buddy" knows a little less that he thinks, or is talking about something else...
But, personally I wouldn't save "unlimited images" in a database at all: I save images on a file server, and save the file path information in the database: it saves on bandwidth to the SQL server if nothing else.
Which is "best" will depend on a huge range of factors, because not all DBs are the same: MsSql and MySql are multiuser, SQLite and SqlCE are single user. Access tries to be multiuser, and generally fails miserably. But, MsSql and MySql need a large, complex installation while Access and SQLite are simple, and SqlCE installs as two small DLL assemblies... And so on, and on.
There is no "Best" database: just as there is no "Best" car it's all a matter of usage and opinion.