Con la consulta que tienes, puedes
ordenar (ORDER BY) por
NUMVENTAS descendente (DESC) y usar un
TOP para quedarte con los 5 primeros.
Algo así:
Código SQL
[-]
SELECT TOP 5
C.IDCLIENTE, NOMBRE, DNI, COUNT(IDVENTA) AS NUMVENTAS
FROM CLIENTE C INNER JOIN VENTA V ON C.IDCLIENTE = V.IDCLIENTE
GROUP BY C.IDCLIENTE,NOMBRE,DNI
ORDER BY NUMVENTAS DESC