Battlefield 1 will be free(-ish) to play from September 22 to September 24 on Xbox One. Why do I say free-ish? Because it's only free if you already have an Xbox Live Gold subscription, which costs money. So while Battlefield 1 itself is free, accessing it is not.
The free play period is part of the Xbox Live Gold Free Play Days event, but it also overlaps with EA's Battlefest: Revolution event, so you get to play the newest stuff for the game too. While the former is all about celebrating customers of Microsoft's online service, the latter is specifically about the Battlefield series. From September 19 to September 30, players will have access to the Battlefield 1 In the Name of the Tsar expansion.
You could win something too. From September 19 to September 25, players who upload a Battlefield 1 In the Name of the Tsar clip (30 seconds max) to Facebook or Twitter and tag it #BattlefestRevolution #EAContest (with #EAContest at the start of your reply or comment) can win a Samsung HDR monitor. There are also special missions to undertake, double XP opportunities, 100 bonus Scraps for every day you log in during Battlefest, and more. To see all the details, check out the event's official page.
As for those just trying the game out on Xbox One, you'll be able to save 40% on Battlefield 1 plus its premium pass (or just 40% off the premium pass if you already own the game) between September 19 and September 25. Any progress made during the free play weekend will carry over to the full version should you choose to make it a permanent part of your library.