Enter Find Mode
appear to generate the same results. Is there any reason to do one rather than the other?
if you are using variables in the search criteria you cannot use perform find alone. You need to use set field script step to get those variables in the right field.
Enter Find Mode [ ] (by itself) puts the user in Find Mode where he/she can find whatever they want.
You use Perform Find [ ] to define exactly what you want the user to find, which takes the Find out of the user's hands. For example, your script could use Perform Find [ ] to find all records dated yesterday and present them to the user for further work.
If writing a script to do this, here is an example.
Let's say you're doing what Allen suggested.
(Finding records from yesterday)
Let's also say that this is in a table called Notes.
Go to layout [ Notes ]
Enter Find Mode 
Set field [ Notes::Date; get( currentDate) - 1]
Perform Find 
I've read so many compelling reasons to use Enter Find Mode that I no longer use perform find. The one that came to mind just now- it's easier for another developer to read your script (since they do not need to open the find). Also I'm not sure you can add additional requests with perform find for an OR search (I may be wrong on that).
"No longer use perform find"
Well; not really. The method is to use both.
But you just don't use the Perform Find [ Restore ] option.
Set field [ someField; someValue]
Set field [ otherField ; otherValue]
Perform Find  // restore option NOT selected.
Retrieving data ...