Short answer:
Western churches switched over to the Gregorian calendar beginning in the 16th century. Eastern churches still follow the older Julian calendar.
Long answer:
The Julian calendar, named after Julius Caesar who implemented it, has been in continual use since Roman times. It was established to deal with the fact that a year is not exactly 365 days long. It actually takes 365.2422 days for the earth to orbit the sun. Of course, the Romans weren't aware of the details of how the actual astronomy works, but Greek and Roman astronomers noticed that the equinoxes and solstices (important for both agriculture and religious ceremonies) seemed to drift relative to a 365 day calendar to the tune of about one day every four years. A Julian year has 365 days, except that every fourth year has a leap day added to February. This makes the average Julian year 365.25 days, which is close to the actual length.
However, 365.25 days is slightly longer than the actual year length of 365.2422 days. This means that the Julian calendar shifts from actual astronomical observations by about 11 minutes 30 seconds a year, or about one day every 125 years. This shift isn't noticeable over a human lifetime. But by the early modern period the observed equinox was ten days off of when the calendar said it should be. This was particularly significant for calculating the date of Easter. For many centuries, Easter had been celebrated on the first Sunday following the first full moon after the spring equinox. The equinox was assumed to be March 21, as it had been when the calendar was created. But by the 16th century, the actual astronomical equinox (the day with equal hours of day and night) was occurring on March 11. So what was to be done when the full moon occurred (say) on March 14, after the "real" equinox but before the prescribed date?
The solution was a new calendar. Proposed by Pope Gregory XIII and named after him, the Gregorian calendar made minor changes to the Julian calendar. There is still a leap day in every year divisible by four, except that years divisible by 100 (1700, 1800, etc.) do not have leap days, unless the year is also divisible by 400 (1600, 2000, etc.) in which case it still does have a leap day. This brings the length of the average year to 365.2425 days, meaning it drifts relative to the actual astronomical equinox by about 27 seconds per year, or one day every 3000 years or so. This new calendar was introduced in 1582. To account for the accumulated error of sixteen centuries of the Julian calendar, the Gregorian calendar also added ten days. So, October 4th, 1582 was followed by October 15th. This brought the spring equinox back to March 21.
But this change occurred after a couple of significant schisms in the church. The Great Schism between East and West is traditionally dated to 1054. The Eastern churches did not recognize Rome's authority to change the calendar, and so they continued to use the original Julian calendar. By 1582, much of Northern Europe had also broken away during the Protestant Reformation, so England, Scotland, Scandinavia, parts of Germany, and others kept to the Julian calendar as well for a time. Events which occurred during this time are often dated using both calendars, usually called "Old Style" (or simply "O. S.") for the Julian date and "New Style ("N. S.") for the Gregorian.
Eventually, international trade made keeping separate calendars for separate countries inconvenient. Protestant countries gradually switched to the Gregorian calendar over the following centuries - Prussia in 1612, Denmark-Norway in 1700, the United Kingdom and its colonies in 1752, and so on. The established Protestant churches of these countries followed their governments, so Protestant churches today celebrate holidays on the same day as the Catholic Church. Orthodox countries farther east did not switch until the 20th century - Bulgaria in 1916, Russia (following the October Revolution) in 1918, Greece (also following a revolution) in 1923. The Orthodox churches, however, did not switch calendars along with their governments. They have kept to the Julian calendar ever since. So, from their perspective, they do celebrate Christmas on December 25. It's December 25 of the Julian calendar, which corresponds to January 7 of the Gregorian calendar. And they do celebrate Easter on the first Sunday after the first full moon following March 21 - March 21 of the Julian calendar, that is, which is April 3 in the Gregorian calendar. So Orthodox Christmas is always after Western Christmas. But because the date of Easter is partially based on the lunar cycle, Western and Orthodox Easter celebrations are occasionally on the same day. This last occurred in 2017, when the full moon was Tuesday, April 11 N. S. (March 29 O. S.). Western Easter was on April 16 N. S., Orthodox Easter on April 3 O. S., which was the same day. It will next happen in 2025, when the full moon is expected on Saturday, April 12 N. S. (March 30 O. S.), and Easter for both churches will be on April 20 N. S. (April 7 O. S.).