For anyone with asthma or allergies, a trip to France in the past would quickly turn into a nightmare, with people smoking with impunity right in front of no-smoking signs everywhere from the airport to shopping centers to restaurants to hotels. 

But there is good news!  Public opinion is slowly evolving, with more and more people favoring an outright ban on smoking in public places.  Recent legislation, which took effect February 1, 2007, bans smoking in public indoor spaces, punishable by fines up to 350 euros.    According to the legislation, these public indoor spaces include shopping centers, airports, train stations, hospitals, schools and all workplaces.  It also includes hotel common areas (such as lobbies). 

Restaurants, bars and discotheques (even those inside hotels) have been required to enforce this law since January 1, 2008.  Restaurants and bars in train stations, airports and shopping centers are required to enforce the ban, so these should be safe havens for non-smokers.  Of course, time will tell if this ban will be enforced, or simply ignored as was the Loi Evin for well over a decade.

Smoking appears to be condoned/permitted on the outside terraces/sidewalk seating of many establishments. Indoors the ban is enforced, except on railway station platforms where even the staff can be seen having a quick smoke during a train stop

 The remainder of this section may well  have been overtaken by events.

 Always ask for the non-smoking section in a restaurant (non-fumeur), but keep in mind that most restaurants do not have one, and even if they do, they are usually poorly ventilated and ineffective.  In good weather, sidewalk seating is probably your best choice for dining when non-smoking restaurants are unavailable.

Another strategy is to eat earlier rather than later, as there won't be so many people dining and the chance of being crowded into a smoky corner is much reduced.  Also, restaurants seem to be less smoky than bistros.  Again, try to get there early - around 12 for lunch and 7 or 7.30 pm for an evening meal.

For a nationwide list of restaurants that have signed a pledge with the association for non-smokers' rights (DNF), see the following website:

You can click on the name of the region , then on the name of the city to find the names of participating restaurants (for Paris, click on Ile-de-France, then Paris, then the number of the section, or arrondissement of Paris that interests you).  Those listed with a green circle are completely non-smoking, those with a purple circle comply with the anti-smoking reglementation (i.e., have a separate non-smoking area that represents no more than 30% of the total area of the restaurant), and those that are displayed next to a red circle have separate rooms for non-smokers.

The Paris tourism office has a list of hotels and restaurants that are "100% smoke-free".  While this seems to be reliable for restaurants on the list, experience with a "100% smoke-free" hotel proves that you have to be sceptical.  Specify in your reservation that you need a non-smoking room and reconfirm this upon arrival.   One traveler did not, and was given a smoking room (who knew these existed in a 100% smoke-free environment??).  This traveler was also surprised to see an ashtray in the lobby, and a late-night receptionist smoking there inside the hotel.  But even so, these hotels are definitely your best bets for a smoke-free stay in Paris.  Here's a link to the restaurants (the page contains a link to the hotels as well):

For hotels in other regions, always ask if there is a non-smoking floor.  Non-smoking rooms are often mixed in with smoking rooms, and due to poor ventilation, can sometimes be quite smoky themselves.   Also ask about air-conditioning -- many hotels do not have this, and those that do may not make it available all year round, so your chances of being able to ventilate the room without opening the windows are slim.

Finally, it's sad to say, but if all else fails and you can't find anywhere to eat "sans tabac", American chain restaurants are usually safe.