Either way is technically correct.
"Did you see any cows on the farm?" This is either skeptical or colloquial; it's more natural in my opinion, but whether it's skeptical or colloquial depends on the emphasis. If the speaker emphasizes "any", I would say that he's being skeptical; if he emphasizes "cows", then he's just being casual.
"Did you see cows on the farm?" This puts the emphasis on cows. You might have seen pigs and geese and chickens on the farm, but what we're really interested in is the cows. Of course, verbal emphasis could change the meaning.
Some examples of verbal emphasis:
"Did YOU see cows on the farm?" (or was it someone else?)
"Did you SEE cows on the farm?" (or did you only smell them?)
"Did you see COWS on the farm?" (or were there only horses?)
"Did you see cows on the FARM?" (or were they only at the petting zoo?)
Generally, I'd say that without "any", it's more easy to add emphasis, whereas with the "any", it's more colloquial and natural. But the difference is quite subtle and it depends almost entirely on verbal emphasis.