A Microservice process is independently deployable and maintainable. It is only coupled with other microservices through network calls and is typically backed by it's own database / data source.
A Modular Monolith module is logically distinct but deploys with the other modules. It may be coupled to the rest of the application through more than network calls.
Use Microservice for large systems that need the scalability and freedom to chose its own tech stack that comes from this independence.
Use Modular Monolith for small teams or when you anticipate that the number of services will be small enough to avoid the "distributed monolith" problem.