As discussed in this blog deployment of Lync can be a hard one!
I went to a lot of trouble and want to share my experiences, all started by a upgrading the Lync server to 2013 (thus want to remove 2010).

Some machines still have Lync 2010, what need a minimal update to 4.0.7577.4013 so able connecting to the 2013 server.
Lync 2013 can still connect, but will give a message to the user and some feature is missing...So update to 15.0.4569.1503.

Before I go in to the details of deploying Lync 2013, there are some licenses subjects that need to be addressed.
You can install from source or by the Office 2013 Professional suite, both contain Lync 2013, but require different licenses.
Here are an article that can help with the myths.

Because I had to remove the Lync 2013 from source and install the Office 2013 Lync next to an existing Office 2010 installation:

Uninstall Lync 2013, create an XML:

<Configuration Product="Lync">
    <Display Level="none" CompletionNotice="no" SuppressModal="yes" AcceptEula="yes" />
    <Setting Id="SETUP_REBOOT" Value="Never" />

And execute by: setup.exe /UNINSTALL Lync /config  c:\temp\SilentUninstallLync.xml

Install Lync 2013 Office, I used the XML:

<Configuration Product="ProPlus">
    <Display Level="none" CompletionNotice="no" SuppressModal="yes" AcceptEula="yes" />
    <Setting Id="REMOVEPREVIOUS" Value="" />
    <Setting Id="SETUP_REBOOT" Value="Never" />
    <OptionState Id="LyncCoreFiles" State="local" Children="force" />
    <OptionState Id="GrooveFiles2" State="absent" Children="force" />
    <OptionState Id="WORDFiles" State="absent" Children="force" />
    <OptionState Id="PubPrimary" State="absent" Children="force" />
    <OptionState Id="PPTFiles" State="absent" Children="force" />
    <OptionState Id="OUTLOOKFiles" State="absent" Children="force" />
    <OptionState Id="TOOLSFiles" State="absent" Children="force" />
    <OptionState Id="OneNoteFiles" State="absent" Children="force" />
    <OptionState Id="XDOCSFiles" State="absent" Children="force" />
    <OptionState Id="EXCELFiles" State="absent" Children="force" />
    <OptionState Id="ACCESSFiles" State="absent" Children="force" />
    <COMPANYNAME Value="Your Company" />

Then at a later stage you can add other office products by again using the XML, but set other OptionState Id to local, very self explaineble.
But remove the Setting Id="REMOVEPREVIOUS" line so older version get replaced.
Please the Lync 2013 Software Tips for more...