# Changing Immutable Collections

DevFeed: [Changing Immutable Collections](<https://devfeed.tech/articles/changing-immutable-collections-30704.md>)

Original publisher: [Read original article](<https://codeblog.jonskeet.uk/2025/12/31/changing-immutable-collections/>)

Author: jonskeet

Published: 2025-12-31T10:32:45Z

Content type: article

Language: en

Sources: [Jon Skeet](<https://devfeed.tech/sources/jon-skeet.md>)

Topics: [C#](<https://devfeed.tech/topics/csharp.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [array](<https://devfeed.tech/tags/array.md>), [arrays](<https://devfeed.tech/tags/arrays.md>), [blog](<https://devfeed.tech/tags/blog.md>), [blog-post](<https://devfeed.tech/tags/blog-post.md>), [c-sharp](<https://devfeed.tech/tags/c-sharp.md>), [collection](<https://devfeed.tech/tags/collection.md>), [election-2029](<https://devfeed.tech/tags/election-2029.md>), [immutability](<https://devfeed.tech/tags/immutability.md>), [linq](<https://devfeed.tech/tags/linq.md>), [migration](<https://devfeed.tech/tags/migration.md>), [properties](<https://devfeed.tech/tags/properties.md>)

## AI overview

The article explains a migration from ImmutableList<T> and ImmutableDictionary<TKey, TValue> to immutable collection types better suited to code that creates collections and then leaves them unchanged. It describes the migration steps and related helper-method and property-type changes.

## Source excerpt

As I've written before, I'm leaning heavily into immutability in the election site code. Until September 2025 (it's taken a long time to get round to writing this blog post) that meant a combination of records, ImmutableList<T> and ImmutableDictionary<TKey, TValue>. In an ECMA C# standards meeting, however, Joseph Musser passed on some really valuable feedback ... Continue reading Changing Immutable Collections ->