Monolithic architecture is a web development style where you have all the web-development code in one location. On the other hand, Microservices are a way to partition a large websites such as amazon into smaller components called microservices. They do this by breaking up application functionality into several components, and these components can communicate using HTTP/REST/SOAP apis.
These tend to be faster and are better practice because each microservice can be put in a container, which has its own libraries. Furthermore, because they communicate over REST/HTTP its easy to use different languages for different components. This is a major benefit, because some parts of the website may need different languages for speed, features or packages, so this is a very easy way to do that.
Another advantage of microservices is that there can be separate evolution of application features or components. Teams can be assigned a particular functionality, and it is separate from other code, causing less overhead of learning the code base, and less overlap. Teams can work at their own pace, but ultimately are responsible for the functionality they were assigned.
Containerization with Docker makes it possible to package different application components as independent deployable units. Kubernetes, a container orchestration service, helps make microservices run like a well oiled machine.
Monolithic architecture is much easier to deploy and there is much less overhead, but can get messy and is not suitable for sites like amazon. Monolithic is a relic of the past