Both COUNT() and COUNTROWS() functions accepts single parameter. The difference lies in the fact that COUNT() operates over a column whereas COUNTROWS() asks for the table as a parameter or you can say that COUNT() considers only single column but COUNTROWS() pay attention to all the columns of the table i.e.
Also, from evaluation standpoint, COUNT() ignores BLANK values when calculating the rows but COUNTROWS() considers it and gives you the whole count of rows from the table.
However, if you are certain that the column you are using COUNT() function on is NEVER going to have BLANK values then using COUNTROWS() also would give you the same results.
So, in the scenarios, where you find that COUNT() and COUNTROWS() functions are going to produce the same result due to the fact of column being say Not Null then it is recommended to use COUNTROWS() function because it is more efficient and evaluates faster as compared to COUNT() with the obvious reasons that it doesn’t have to look after a consideration of BLANKs.