Litigation Hold was first introduce in Exchange 2010 and is configured per mailbox. You set mailboxes on litigation hold on a per mailbox basis. Exchange 2016 also allows you to specify a hold duration - "how long you want to hold items in a mailbox for".
To put a mailbox on Litigation Hold, simply use the following command:
Set-Mailbox firstname.lastname@example.org -LitigationHoldEnabled $true
Unlike Litigation Hold which is on a mailbox level, In-Place Hold allows you to hold items across your organization based on a query such as keywords, senders and recipients, start and end dates, and also specify the message types such as email messages, calendar items, and Skype for Business conversations that you want to place on hold.
In other words its a query based search and puts individual items such as emails on hold instead of an entire mailbox.
In-Place Holds are created using the Compliance management > eDiscovery Center. For more information on how to do this, refer to the following article.
Outlook Protection Rules
Unlike Litigation Hold and In-Place Hold, Outlook protection Rules help your organization protect against the risk of information leakage by automatically applying Information Rights Management (IRM) protection to messages.
Outlook Protect Rules are created on the Exchange Server with the New-OutlookProtectionRule cmdlet. These rules are then automatically distributed to the correct Outlook clients via Exchange Web Services.
Before you create Outlook Protect Rules you must have an AD RMS server deployed in the same Active Directory forest as your server running Microsoft Exchange Server.
Hope this information was helpful!