I stayed at both the Westin and Sofitel back in 2019 and by far preferred the Sofitel.
The Sofitel had by far the nice and more modern room layout, where as the Westin had a dated feel. The Bedding in the Sofitel was some of the best i have ever slept in. The roof top bar was nicer and had more of a panoramic view. The pool was overall very nice but i don't recall the gym quality/size. Sofitel is actually very close to the Thermae cafe as an added bonus
The Westin is in a slightly closer location to Terminal 21 and the BTS line. If you stay on the train facing side of the hotel you can hear the train as it goes by, if you are a light sleeper this may bother you. My biggest complaint about the Westin is the odd lobby layout with a reception area on the ground floor and then the lobby on the 7th. This adds an extra elevator trip every time you leave. The elevators on the 7th floor are not even close together so you have to walk across the lobby floor plan so add about 5min to exiting the hotel which can add up.
I also stayed at the Terminal 21 and the facilities are top notch, great infinity pool and amazing gym/spa/sauna, best i've seen in Bangkok. The big downside is the bed is rock hard and the giant windows don't fully blackout so you get sun in the morning which is a major annoyance if you want to sleep in. The view from the floor to ceiling window is amazing. In the standard room there is no real desk, more like a small side table and regular chair (not office chair) so if you have to work it could be an issue. Location is great for easy access to the mall/food court. The room actually has a washing machine and stove too. I am on the fence about this hotel, great location and best facilities but a mediocre room.
The Landmark is a good alternative and usually at a slightly lower price point. Good location near Nana and the BTS station. Pool was ok, i don't recall the gym quality. The rooms do feel dated but overall nice and clean. Good bedding but not as nice as Sofitel.
Planning my next trip for November and am leaning towards Sofitel. But any of these options are very nice and i will probably pick based on price as it gets closer to booking time.